jax-ws和码头(使用maven)

时间:2011-12-28 18:32:16

标签: maven jetty jax-ws

前段时间我已经问了一些关于JAX-WS的东西: Use Maven to trigger a wsgen & wsimport in a row, using wsdlLocation

当时的Glassfish就是这样,现在我的要求是为Jetty工作。我知道,我知道,但我没有选择。

所以基本上Jetty对JAX-WS的支持要少得多。我从metro 1.5中包含了webservices-api.jar和webservices-rt.jar(我使用的是JDK6u30)。

从我的示例Web服务中,我构建了一个简单的war文件并将其提供给Jetty。在启动时,这是Jetty所说的:

War File=/usr/local/apps/web/mywebservices.war;Context=mywebservices;Work=/usr/local/apps/web/work/mywebservices
Dec 28, 2011 10:23:33 AM com.sun.xml.ws.transport.http.servlet.WSServletContextListener contextInitialized
INFO: WSSERVLET12: JAX-WS context listener initializing
Dec 28, 2011 10:23:35 AM com.sun.xml.ws.server.MonitorBase createRoot
INFO: Metro monitoring rootname successfully set to: com.sun.metro:pp=/,type=WSEndpoint,name=/mywebservices-MyServicesWsV2Service-MyServicesWsV2Port
Dec 28, 2011 10:23:35 AM com.sun.xml.ws.transport.http.servlet.WSServletDelegate <init>
INFO: WSSERVLET14: JAX-WS servlet initializing

我使用maven生成war文件。非常简单的pom.xml基本上只包含依赖项,没有插件(除了在1.6中编译的maven-compiler-plugin)

使用Glassfish你可以直接得到类似的东西 {{3个可用。 我的第一个问题(因为我确信会有一个后续行动)是:Jetty可以为我提供像Glassfish这样的wsdl吗?如果没有,我怎样才能创建它并在我与maven的战争中运送它?

谢谢!

PS:另见http://localhost:9090/mywebservices/MyServicesWsV2Service?wsdl

1 个答案:

答案 0 :(得分:0)

Jetty不会假装包含Web服务支持。只需输入Apache CXF即可获得完整的JAX-WS / JAX-B解决方案,包括您习惯使用的所有内容。