6

Been trying to get jax-ws web service working in websphere 8.5 but no success. I have tried Java bean & war packaging, stateless ejb & jar packaging but it just does not work.

I am trying to get it work with @webservice annotation.

I am not generating any extra artifacts. I am letting websphere figure out during the deployment. During deployment there is no error. After deployment, I try to run wsdl in the browser to see if web service is installed successfully but I get nothing.

Not sure if I am doing something wrong during the deployment or something else. Let me know if you want more info.

Regards,

4

4 回答 4

3

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

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

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

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

于 2013-07-03T17:17:57.730 回答
1

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

确保您的 web.xml 是为 Servlet 3.0 规范编写的。我正在为 Servlet 2.4 使用 web.xml 并将版本更新到 3.0 为我解决了这个问题。

希望这可以帮助...

于 2013-05-21T13:01:26.170 回答
1

与WAS8.5 面临类似问题这是由于WAS 和应用程序都进行了注释扫描。使用“DisableIBMJAXWSEngine”禁用 WAS 注释扫描后,应用程序能够启动。

DisableIBMJAXWSEngine: true
于 2018-09-03T04:11:12.000 回答
0

如果您使用 WAS 8.0 ,请确保您的 java 运行时和项目方面为1.6 。

于 2018-08-29T20:39:41.553 回答