我现在正在阅读JAX-WS。
我已经使用Eclipse和手工成功构建了JAX-WS RI服务。这两种方法都使用了apt。在通过Eclipse将应用程序部署到应用程序服务器或创建战争(使用或不使用sun-jaxws.xml,具体取决于正在使用的容器)并手动部署它时,JAX-WS运行时生成相应的WSDL自动。
什么时候使用wsgen很有用?
答案 0 :(得分:5)
wsgen生成响应和请求包装器类,如您所述,可以生成WSDL。某些容器(如CXF)根本不需要这些包装类 - 它们可以即时生成它们。或者,您可能已经为自己创建了它们,或者我认为是这样。
This link说明了这一点。
JAX-WS RI提供了一些apt工厂,并建议运行APT来生成一些代码。
事实上,我认为http://jax-ws.java.net/nonav/2.1.1/docs/jaxws-tools.html#mozTocId344067可能是您原始问题的金标准答案。
一点扩展:JAX-WS(标准)和JAX-WS(参考实现)是两个不同的东西。如果您使用的是内置于Java 1.6,Metro或CXF或其他内容的RI,则会遇到不同的工具和要求。例如,在CXF中,对于java-first服务,您根本不需要运行任何工具。
如果您需要将其发送给其他人并且您不想启动该服务并使用?wsdl API,则从命令行生成wsdl可能会有所帮助。
该标准不要求使用任何工具,但该标准允许符合标准的实现使用工具。呼!