我开发了第一个服务,它工作得很好。现在我正在开发另一个类似的服务。当我手动发布端点时,我可以浏览wsdl。但是当我将ear文件部署到JBoss时,我无法看到wsdl。 EAR成功部署到JBoss,我看到状态为UP并正在运行。
这是我的sun-jaxws.xml文件。我希望将wsdl lto部署到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求助。
答案 0 :(得分:0)
删除web.xml文件的所有内容,但将文件保留为自己。说实话我不知道为什么会这样,但部署到JBoss的WS不起作用。
答案 1 :(得分:0)
我知道这篇文章可能很旧,但是到达这里寻找解决问题的人有帮助,好的,解决了这个问题的解决方法here,
它是如何工作的? JAX WS参考实现附带com.sun.xml.ws.transport.http.servlet.WSServletContextListener
和com.sun.xml.ws.transport.http.servlet.WSServlet
这些类负责处理请求。如果您熟悉web.xml,则很容易理解。