在运行完 CXF 示例后,我启动了一个简单的 Web 服务并且运行良好。但是,我想将它与 servlet 容器内的 Spring Web 应用程序集成。更新 servlet.xml 配置文件后:
<jaxws:endpoint id="HelloWorldService"
implementor="path.to.webservice.HelloWorldImpl"
endpointName="e:HelloEndpoint"
serviceName="s:HelloService"
address="/HelloService"
xmlns:e="http://service.jaxws.cxf.apache.org/endpoint"
xmlns:s="http://service.jaxws.cxf.apache.org/service"/>
和 web.xml:
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>
org.apache.cxf.transport.servlet.CXFServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
我能够在 servlet 中部署它,但是 Spring 服务的 WSDL 是非常错误的,即使 Java 接口和实现文件是相同的。请参阅下面的 Eclipse WSDL 大纲:
替代文字 http://img171.imageshack.us/i/correcty.jpg/替代文字 http://img190.imageshack.us/i/wrongia.jpg/
为什么会从相同的 .java 文件生成如此不同的 WSDL,我怎样才能让它在 servlet 中工作?提前致谢。