將啟用 Web 服務的用戶端 JAR 檔組合成 EAR 檔
現在您已產生應用程式構件,您需要組合這些構件,以建立在 Web 服務應用程式中使用的企業保存檔 (EAR)。
開始之前
對於 Java™ API for XML-Based Web Services (JAX-WS) Web 服務應用程式,您需要 wsimport 指令行工具在從 WSDL 檔啟動時所產生的可攜式構件,才能完成這項作業。 wsimport 工具會處理 WSDL 檔作為輸入,並產生下列可攜式構件:
- 服務端點介面 (SEI)
- 服務類別 (service class)
- 從
wsdl:fault類別對映的異常狀況類別 (如果有的話) - Java Architecture for XML Binding (JAXB) 產生的類型值,是從 XML 綱目類型對映的 Java 類別
- 一種組合用戶端模組,包含實作、 wsimport 指令行工具所產生的所有類別,以及 ejb-jar.xml 部署描述子或 application-client.xml 部署描述子。 此模組可以是:
- 包含 META-INF/application-client.xml 檔的應用程式用戶端模組。
- 包含 META-INF/ejb-jar.xml 檔的 Enterprise JavaBeans (EJB) 模組。
對於 Java API for XML-Based RPC (JAX-RPC) Web 服務應用程式,您需要從 WSDL2Java 指令行工具產生下列構件,才能完成這項作業:
- 一種組合用戶端模組,包含實作、 WSDL2Java 指令行工具所產生的所有類別,以及 ejb-jar.xml 部署描述子或 application-client.xml 部署描述子。 此模組可以是:
- 包含 META-INF/application-client.xml 檔的應用程式用戶端模組。
- 包含 META-INF/ejb-jar.xml 檔的 Enterprise JavaBeans (EJB) 模組。
- 您用來開發用戶端的 WSDL 檔。
- ibm-webservicesclient-ext.xmi 和 ibm-webservicesclient-bnd.xmi 部署描述子的範本 (如果使用的話)。
- 產生的 Java API for XML 型遠端程序呼叫 (JAX-RPC) 對映部署描述子。
限制: 請勿在應用程式保存檔內包裝的檔案名稱中包含井號 (#)。 由於內部處理之故,當應用程式保存檔內的檔案名稱中包含井字號時,應用程式伺服器將無法正確部署應用程式。 如果發生這種失敗,則可能會在處理應用程式時發生異常狀況。 此外,在部署應用程式之後,部分應用程式可能會遺失。 為處理這個問題,請將應用程式保存檔內的所有檔名重新命名,讓它們不包含井字號。
關於這項作業
您可以使用 WebSphere® Application Server 隨附的組合工具來組合啟用 Web 服務的用戶端應用程式。
組合用戶端程式碼和構件,讓應用程式用戶端能夠利用所提供的步驟來存取 Web 服務:
程序
- 啟動組合工具。請閱讀 Rational® Application Developer 說明文件中關於啟動組合工具的說明。
- 如果您尚未這麼做,請將組合工具配置成在 Java EE 模組上運作。 您需要確定已啟用 Java EE 和 Web 種類。 請閱讀 Rational Application Developer 說明文件中關於配置組合工具的說明。
- 將用戶端實作和指令行工具所產生的構件匯入組合工具中。
- 移轉使用 Rational Application Developer 組合工具所建立的 JAR 檔。 若要移轉檔案,請將 JAR 檔匯入組合工具。 請閱讀 Rational Application Developer 說明文件中關於將程式碼構件移轉至組合工具的說明。
- 如果用戶端在儲存器中執行,請使用一般組合技術將 JAR 檔組合成企業保存檔 (EAR)。
結果
範例
此組合處理程序範例使用 AddressBookClient.ear EAR 檔的 AddressBookClient.jar JAR 檔:
META-INF/MANIFEST.MF
META-INF/application-client.xml
META-INF/wsdl/AddressBook.wsdl
META-INF/AddressBook_mapping.xml
com/ibm/websphere/samples/webservices/addr/Address.class
com/ibm/websphere/samples/webservices/addr/AddressBook.class
com/ibm/websphere/samples/webservices/addr/AddressBookClient.class
com/ibm/websphere/samples/webservices/addr/AddressBookService.class
...other generated classes...將 AddressBookClient.jar 檔案組合成 AddressBookClient.ear 檔案之後, AddressBookClient.ear 檔案包含下列檔案:
META-INF/MANIFEST.MF
AddressBookClient.jar
META-INF/application.xml下一步
對於 Java API for XML-Based Web Services (JAX-WS) 應用程式,您已準備好部署 Web 服務用戶端應用程式。
對於 Java API for XML-Based RPC (JAX-RPC) 應用程式,您需要使用組合工具來配置用戶端部署描述子連結,以便用戶端可以與部署在伺服器上的 Web 服務通訊。