jax-ws Web服务在websphere 8.5中不起作用

问题描述 投票:5回答:4

一直试图让jax-ws web服务在websphere 8.5中运行但没有成功。我尝试过Java bean和war包装,无状态ejb和jar包装,但它只是不起作用。

我试图让它与@webservice注释一起工作。

我没有产生任何额外的文物。我让websphere在部署期间搞清楚了。在部署期间没有错误。部署之后,我尝试在浏览器中运行wsdl以查看Web服务是否已成功安装但我什么都没得到。

不确定我在部署期间是否做错了什么。如果您想了解更多信息,请告诉我。

问候,

java web-services java-ee jax-ws websphere-8
4个回答
3
投票

实际上,websphere 8.5符合Java EE 6,这意味着容器应该扫描Web应用程序的类路径以查找@webservice注释类并将它们部署为正在运行的Web服务。

但是,根据您使用的servlet规范(在web.xml文件中给出),扫描不会发生:它应该从规范的2.5版开始自动进行。

对于较旧的Web应用程序,Websphere解决方案是在相关战争的MANIFEST.MF中放置一个特殊属性:关键是UseWSFEP61ScanPolicy,值为true。请参阅here了解更多详情。

servlet 3.0规范还有一个控制扫描的参数(它通常用于加速应用程序的冷启动初始化)。在您的web.xml 3.0部署描述符的根标记中放置metadata-complete =“true”将阻止扫描发生(并且false启用它)


1
投票

我或多或少遇到了同样的问题,但在WAS 8.0上。

确保您的web.xml是为Servlet 3.0规范编写的。我正在使用web.xml for Servlet 2.4并将版本更新为3.0修复了我的问题。

希望这可以帮助...


1
投票

面对WAS8.5的类似问题这是由于WAS和应用程序都完成了注释扫描。使用“DisableIBMJAXWSEngine”禁用WAS注释扫描后,应用程序就可以启动了。

DisableIBMJAXWSEngine: true

0
投票

如果您使用的是WAS 8.0,请确保您的Java运行时和项目构面是1.6。

© www.soinside.com 2019 - 2024. All rights reserved.