Web services jax ws无法获取wsdl,sun-jaxws.xml可能是错误的?

Web services jax ws无法获取wsdl,sun-jaxws.xml可能是错误的?,web-services,jax-ws,Web Services,Jax Ws,我开发了第一个服务,效果很好。现在我正在开发另一个类似的服务。当我手动发布端点时,我可以浏览wsdl。但是当我将ear文件部署到JBoss时,我无法看到wsdl。EAR成功部署到JBoss,我看到状态为启动并运行 这是我的sun-jaxws.xml文件。我希望wsdl lto部署到url:port/services/Lookup?wsdl。对吧? <?xml version="1.0" encoding="UTF-8"?> <endpoints xmlns='http://

我开发了第一个服务,效果很好。现在我正在开发另一个类似的服务。当我手动发布端点时,我可以浏览wsdl。但是当我将ear文件部署到JBoss时,我无法看到wsdl。EAR成功部署到JBoss,我看到状态为启动并运行

这是我的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>

com.sun.xml.ws.transport.http.servlet.WSServletContextListener
JAX-WS端点
WSServlet
WSServlet
com.sun.xml.ws.transport.http.servlet.WSServlet
1.
WSServlet
/服务/*

TIA感谢您的帮助。

删除web.xml文件的所有内容,但保留文件本身。说实话,我不知道为什么会出现这种情况,但部署到JBoss的WS在其他情况下不起作用。

我知道这是一篇老文章,但到这里来寻找it问题解决方案的人会有所帮助,好吧,这个问题的解决方案已经解释了


它是如何工作的?JAX WS参考实现附带
com.sun.xml.WS.transport.http.servlet.WSServletContextListener
com.sun.xml.WS.transport.http.servlet.WSServlet
这些类负责服务请求。如果您熟悉web.xml,它很容易理解。

不,它不起作用。有没有办法在JBoss上调试并获得WSDL的正确URL?以及讨论web.xml sun-jaxws.xml文件的任何详细文档?嗯。。。没有。虽然我通常使用WAR归档部署web服务,并且根本没有sun-jaxws.xml(同时保持web.xml为空)。但它如何知道在哪里部署wsdl?就像服务/Loookup?正如我所说,我不知道它是如何工作的(只知道它是如何工作的)。我假设它使用实现文件来检查这一点,但不要引用我的话。