我使用jaxws-2.2功能,需要知道如何为WLP v 16.0.0.4配置JAX-WS。
WLP使用Apache CXF实现JAX-WS。 Apache CXF JAX-WS配置包括接下来的两个步骤。
在web.xml中创建servlet类映射(org.apache.cxf.transport.servlet.CXFServlet)
在cxf-servlet.xml中创建JAX-WS端点配置(jaxws:endpoint)
也许在Liberty上配置JAX-WS Apache CXF的其他方法,但是,我不知道。我找到的与Spring相关的cxf-servlet.xml的所有示例:
Apache CXF http://cxf.apache.org/docs/jax-ws-configuration.html
IBM https://www.ibm.com/developerworks/websphere/library/techarticles/1001_thaker/1001_thaker.html(请参阅随附的pdf和示例应用程序)。
我没有找到没有Spring(以及任何其他第三方)依赖项的纯Java EE应用程序的cxf-servlet.xml示例。
亲切的问候,
亚历山大
答案 0 :(得分:1)
一旦你将jax-ws功能添加到server.xml,最简单的方法是创建一个包含类的war文件,就像你使用servlet一样,但是这个类有一个@WebService注释而不是@WebServlet。公共方法将成为您的Web服务操作。部署war文件时将自动生成WSDL。通过查看Liberty的messages.log文件,可以检测到它的确切URL。 Web.xml是可选的。
答案 1 :(得分:0)
处理WLP中提供的JAX-WS实现(这里是cxf)是一个很大的错误...
您不需要特定的配置",只需坚持使用具有大量注释的JAX-WS规范来定义服务,操作,端点和参数映射(JAX-B)等你不需要任何配置文件
简而言之,只需创建一个POJO,使用@WebService
注释该类,并使用@WebMethod
添加方法。
您可以在网上找到很多教程。甲骨文的一个是here
检查官方jee6 / jee7 javadoc的javax.jws
和javax.jws.soap
包中的课程
它与REST服务的原理相同,即简单注释的POJO类。