我有一個關於生成Java工件與wsimport工具(Maven的JAX-WS)問題的最佳實踐代碼 - 包裝代碼
當我生成WSDL的Java工件,我想收拾Web服務項目作爲WAR文件,其客戶端作爲JAR文件。
何處放置生成的工件以及放置WSDL的位置? 關於組織Web服務項目的最佳做法是什麼?
預先感謝您!
最好的問候, 尤里察Krizanic
我有一個關於生成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生成的代碼是否與服務器端和客戶端相同? –