我开发了第一个服务,效果很好。 现在我正在开发另一个类似的服务。 当我手动发布端点时,我可以浏览 wsdl。 但是当我将ear文件部署到JBoss时,我看不到wsdl。 EAR 成功部署到 JBoss,我看到状态为 UP 并正在运行。
这是我的 sun-jaxws.xml 文件。 我希望将 wsdl l 部署到 url:port/services/Lookup?wsdl。 对吗?
<?xml version="1.0" encoding="UTF-8"?>
<endpoints xmlns='http://java.sun.com/xml/ns/jax-ws/ri/runtime' version='2.0'>
<endpoint
name='LookupService'
implementation='com.company.it.webservices.LookupService'
url-pattern='/services/Lookup'/>
</endpoints>
这是我的 web.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<servlet>
<description>JAX-WS endpoint</description>
<display-name>WSServlet</display-name>
<servlet-name>WSServlet</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WSServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
</web-app>
TIA 寻求您的帮助。
删除 web.xml 文件的所有内容,但保留文件本身。说实话,我不知道为什么会出现这种情况,但部署到 JBoss 的 WS 无法正常工作。
我知道这是旧帖子,但到达这里寻找解决方案的人可能会有所帮助,好吧,这个问题的解决方案已解释这里,
它是如何运作的? JAX WS 参考实现附带
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
和 com.sun.xml.ws.transport.http.servlet.WSServlet
这些类负责处理请求。如果您熟悉 web.xml,那么它很容易理解。
我知道这篇文章已经很旧了,但是这些天我们作为一个团队遇到了一个问题,并找出了为什么 sun-jaxws.xml 没有被读取的原因。
注意:此答案基于 IntelliJ。
我们的实现几乎相同(web.xml 和 sun-jaxws.xml 内容如原始问题中所示),环境是 Java 8、IntelliJ IDEA(不是社区版本)和 Spring。我们尝试将 JAX-WS WS 引擎与 SOAP 结合使用。 (是的,今年。)我们通过安装 IntelliJ
“Web 服务(JAX-WS)” 插件解决了该问题。
来源: