2017-07-19 72 views
0

我有一个包含JAX-WS Web服务使用@webservice注释此Web应用程序(EAR)。 它在WebSphere的本地服务器上运行良好。但是部署在开发服务器中的相同应用程序未运行,即不扫描@webservice注释的代码。 Ear中没有wsdl文件。仅存在基于注释的Web服务。
WebSphere版本是8.5.5.11。
应用经由web.xml中
设定在1.5 J2EE 有加入弹簧上下文加载侦听器和构造成用于在web.xml“/”路径调度的servlet。
我试图部署在另一台服务器相同的耳朵和那里是工作的罚款。
任何想法/意见/建议。的WebSphere不扫描@WebService注释

+0

这个问题似乎是相关的部署。当使用WAS管理控制台进行部署时,我没有向上下文根目录添加/。这似乎是造成这个问题。不知道为什么! –

+0

映射到同一个上下文根“/”的两个应用程序可能会使第二个应用程序不再出现,但应该记录下来。如果在部署/启动期间日志没有显示任何其他问题,那么有一个属性“disableIBMJaxwsengine”可能会导致您看到的内容,但会阻止服务器上的所有jax-ws应用程序。 –

回答

0

web.xml中的JEE5版本需要一个JVM属性以被设置为它们进行扫描。从Knowledgecenter:

com.ibm.websphere.webservices.UseWSFEP61ScanPolicy

使用此属性来控制产品是否扫描WAR 2.4和JAXWS组件和半管理服务的客户更早模块。默认情况下,这些旧版WAR模块仅用于半管理服务客户端的扫描。

如果你设置这个,下一个 你需要反弹WebSphere,然后 卸载并重新安装应用程序以检测jax-ws服务。

+0

com.ibm.websphere.webservices.UseWSFEP61ScanPolicy = true –

+0

这是用于战争2.4模块。但我的应用程序在2.5版本 –