代码 - 包装代码
我有一个关于生成Java工件与wsimport工具(Maven的JAX-WS)问题的最佳实践代码 - 包装代码
当我生成WSDL的Java工件,我想收拾Web服务项目作为WAR文件,其客户端作为JAR文件。
何处放置生成的工件以及放置WSDL的位置? 关于组织Web服务项目的最佳做法是什么?
预先感谢您!
最好的问候, 尤里察Krizanic
的文物将被要求在客户端和服务器端,以便收拾他们在第三个罐子,并将其设置为既依赖。 WSDL应该进入战争的WEB-INF文件夹,@WebService
和@WebServiceClient
的属性wsdlLocation
应该被设置为反映它的路径。
托管服务的包装选项在JSR 109的定义:Web Services for Java EE, Version 1.3。
服务:
5.4.2 EJB组件封装
...的EJB-JAR 文件中的Web服务部署描述符的位置是
META-INF/webservices.xml
。 wsdl目录位于META-INF/wsdl
。5.4.3 Web应用程序模块封装
...一个Web服务部署描述符位于一个WAR在
WEB-INF/webservices.xml
和WSDL目录位于WEB-INF/wsdl
。
对于客户:
客户端可以是下列任何一项:Java EE应用程序客户端,Web组件,EJB组件或其他Web服务。
的 模块中的Web服务客户端部署描述符的位置与特定模块。 WSDL文件相对于根模块的 被定位并且通常位于所述
wsdl
目录是 共同位于与模块部署描述符或 它的子目录。
请注意,此规范自身限制的Java EE客户端;这并不意味着您不能在显式提供WSDL的地方使用unmanaged client。
交叉引用这些规格为更详细地:
由于为答案。你知道把WSDL放在war文件的什么位置吗?我有一些wsdl加载问题... –
@JuricaKrizanic编辑我的答案。 – zeller
由wsimport生成的代码是否与服务器端和客户端相同? –