我们正在将我们的Web服务从JBoss 5迁移到JBoss 7.现在,Web服务在URL中使用服务名称发布,该服务名称打破了我们所有的现有客户端。在JBoss AS 7.1.1中更改已发布的WebService地址。最终
如何强制发布的地址恢复到原来的状态?
的JBoss 5网址:http://localhost:8080/app/MyServiceImpl
的JBoss 7网址:http://localhost:8080/app/MyService/MyServiceImpl
服务定义为所有EJB注解:
@Stateless
@WebContext(contextRoot = "/app")
@WebService(name = "MyServiceImpl", serviceName = "MyService", portName = "MyServicePort", targetNamespace = "http://...", portName="MyServicePortType", wsdlLocation="/META-INF/wsdl/MyService.wsdl")
public class MyServiceImpl extends implements MyServicePortType {
//code for webservice operations
}
基本上,我想从URL中删除服务名有落后兼容性。如果我从@WebService中删除serviceName,那么在JBoss启动时会出现错误,所以它不是解决方案。该错误是这样的:org.apache.cxf.service.factory.ServiceConstructionException:由所造成服务找不到定义
感谢