「Web 服務」精靈可協助您建立新的 Web 服務、進行部署配置,以及部署 Web 服務到伺服器。一旦部署了 Web 服務,精靈會協助您產生用戶端 Proxy 和範例應用程式來測試 Web 服務。在完成測試後,您可以使用「匯出」精靈將 Web 服務發佈至 UDDI Business Registry。
必備條件:
- 如果您是使用 Apache Jakarta Tomcat Servlet 儲存器做為伺服器,
您必須安裝它、配置其實例,然後建立以它為目標的 Web 專案(如建立 Apache Tomcat 伺服器和 Web 專案所述)。
- 如果您是使用 WebSphere® 伺服器,
請建立目標為適當伺服器的動態 Web 專案(如建立 WebSphere 伺服器和 Web 專案所述)。強力建議您先啟動伺服器,再執行 Web 服務精靈,因為可能需要好幾分鐘才會啟動 WebSphere Application Server(視電腦速度而定)。如果要啟動伺服器,請在「伺服器」視圖中選取它(視窗 > 顯示視圖 > 伺服器),按一下滑鼠右鍵,然後按一下啟動。
- 建立或匯入 Bean 至 Web 專案的 Java™ 來源資料夾中。
如果要利用 Apache AXIS 1.0 執行時期環境從 Bean 建立 Web 服務,請執行下列步驟:
- 切換至 J2EE 視景(視窗 > 開啟視景 > J2EE)。
- 在「專案瀏覽器」視圖中,選取您所建立或匯入到 Web 專案之來源資料夾的 Bean。
- 按一下檔案 > 新建 > 其他。 接著選取 Web 服務以便顯示各種 Web 服務精靈。然後選取 Web 服務精靈。按下一步。
- 「Web 服務」頁面:選取 Java Bean Web 服務作為您的 Web 服務類型。您可以選擇性地選擇執行下列動作:
- 在 Web 專案中啟動 Web 服務 - 如果您沒有選取這個選項,您必須手動啟動 Web 服務。您必須選取這個選項,才能啟用這個頁面中的其他選項。
- 啟動 Web 服務瀏覽器,將 Web 服務發佈至 UDDI 登錄。
- 產生 Web 服務的 Java Bean 用戶端 Proxy。產生的 Java Bean 用戶端 Proxy 將提供遠端程序呼叫介面給 Web 服務。
- 測試 Web 服務 - 這可讓您在產生 Proxy 之前,在 Web 服務瀏覽器中測試 Web 服務。
- 透過 TCP/IP 監視器傳送 Web 服務的資料傳輸,這可讓您監看 Web 服務所產生的 SOAP 資料傳輸,
並測試此一資料傳輸是否符合 WS-I 標準。附註:這項功能只支援 Tomcat 4.0 版和 4.1 版。如果您要使用 Tomcat 5.0 版並監視 Web 服務資料傳輸,您必須依照../../com.ibm.etools.wsi.test.tools.validate.doc/tasks/tmonitor.html中的說明,以手動方式設定 TCP/IP 監視器。
- 「選取物件」頁面:選取用來建立 Web 服務的 Java Bean。
- 「服務部署配置」頁面:指定伺服器和用戶端部署設定。
- 按一下編輯,選取 Apache Axis 1.0 執行時期環境,再選取要在其中執行 Web 服務和 Web 服務用戶端的伺服器。 如果您要使用 IBM® SOAP 執行時期環境或 IBM WebSphere 執行時期環境,請參考適當的作業。
- 選取要在其中建立 Web 服務的 Web 專案以及要與它相關聯的 EAR。 如果它們還不存在,精靈會自動建立它們。
- 選取要在其中建立 Web 服務用戶端的專案之類型和名稱。如果您輸入現有專案的名稱,專案類型欄位必須符合現有專案的類型。
如果您輸入名稱的專案不存在,精靈會自動建立這個專案。請注意,只有 Web 專案是支援的 Axis 和 SOAP 執行時期用戶端專案類型。
如果您要在 Java、EJB 或應用程式用戶端專案中建立用戶端,您必須選取用戶端的 WebSphere 執行時期環境。
- 選取現有的 EAR 或輸入唯一名稱,將 Web 服務用戶端關聯於 Web 服務 EAR 以外的 EAR。附註:在 Web 服務和 Web 服務用戶端上選取不同的 EAR,可以減少發生執行時期錯誤的機會,但會使用比較多的系統資源。
- 這時會出現一則訊息,說明您已完成 WS-I 非標準選取。 Apache Axis 執行時期環境不是 WS-I 標準。
請選取忽略。
- 「Web 服務 Java Bean 身分」頁面:將列出 Web 服務 URI 和 WSDL 名稱。 您有下列選項:
- 選取要顯現的方法。
- 選取編碼樣式。Axis 執行時期環境的建議編碼樣式是 RPC/編碼。這個編碼方法不是 WS-I 標準。
- 選擇是否要自訂套件至名稱空間的對映。
按下一步。
- 「Web 服務套件至名稱空間對映」頁面:如果您已在上一畫面中選取定義套件至名稱空間的自訂對映,您可以按一下新增,在這個畫面中輸入您的自訂對映配對。
- 「Web 服務測試」頁面:如果您選擇要測試 Web 服務,請對產生的 Web 服務選取測試機能。 這會在 Web 服務瀏覽器中開啟 Web 服務。請選取您要測試的作業,輸入必要的資訊,再按一下執行。結果會顯示在「狀態」窗格中。按下一步。
- 「Web 服務 Proxy」頁面:如果您選擇要產生 Proxy,請選擇是否要自訂套件至名稱空間的對映。
- 「Web 服務用戶端測試」頁面:請利用這個頁面來選取下列選項:
- 選取您的測試機能。您可以在 Universal Test Client 或 Web 服務瀏覽器中測試產生的 Proxy,
也可以產生範例 Web 服務 JSP。
- 如果您選擇利用 JSP 來測試 Proxy,您可以選取 JSP 要放在其中的資料夾,且您可以選擇要併入 JSP 的方法。
- 選取在伺服器中執行測試來自動啟動伺服器。
- 「Web 服務發佈」頁面:選擇是否要將這個 Web 服務發佈在 UDDI 登錄中。按一下完成。 附註:您可能會看到含有下列說明的警告:從 Java 產生 WSDL 時發生錯誤。ClassNotFound:<Bean 名稱>。您可以放心忽略這項錯誤。
建立好 Web 服務之後,會發生下列情況,這會隨著您選取的選項而不同:
- 如果您選擇利用 Web 服務 JSP 來測試產生的 Proxy,
該 Proxy 就會於 Web 瀏覽器中的下列 URL 啟動:http://localhost: port/ WebProjectClient/sampleBeanName/ WebServiceName/TestClient.jsp。您可以選取一個方法、輸入方法的值,
然後按一下呼叫,來利用這個範例應用程式測試 Web 服務。方法的結果會顯示在結果窗格中。
- 如果您選擇利用 Universal Test Client 來測試產生的 Proxy,它將在瀏覽器視窗的下列 URL 啟動:http://localhost:9080/UTC/preload?object= BeanPackage. BeanServiceProxy。
請在「參照」窗格的「物件參照」下,展開 Proxy Stub 來顯示 Web 服務的方法。按一下您要測試的方法,在「參數」窗格中輸入值,再按一下呼叫。下面會產生結果。
- 如果您選擇要利用「Web 服務瀏覽器」測試 Web 服務,這時會開啟「瀏覽器」。請選取您要測試的作業,輸入必要的資訊,再按一下執行。結果會顯示在「狀態」窗格中。
- 如果您已經選取發佈 Web 服務,將會啟動「Web 服務瀏覽器」,並顯示將您的 Web 服務發佈至 IBM UDDI Test Registry 時所需的頁面。請遵循發佈 Web 服務中的指示來完成這項作業。
重要事項:如果您的方法包括範例不支援的類型,如:陣列、索引內容和集合,
那麼範例會省略方法,而您會接收到警告訊息。
當您從 Bean 建立好 Web 服務後,
就可以使用 Universal Test Client 來測試 Web 服務的方法,然後將 Web 服務發佈至 UDDI Business Registry。如果需要利用 Web 服務瀏覽器來發佈 Web 服務的詳細資訊,請參閱「發佈 Web 服務」。如果需要 Universal Test Client 的詳細資訊,請參閱「伺服器工具」線上說明。