必備條件:
- 建立 EJB 專案,並將它加入新的 EAR 專案。這個專案會包含產生的 Skeleton EJB Bean。
- 如果您是利用 SOAP over HTTP 作為傳輸方法,請建立一個空的 Web 專案,如果您是利用 SOAP over JMS 作為傳輸方法,請建立 EJB專案,來作為路由器專案。您建立的專案必須和要包含 Enterprise Bean 的 EJB 專案加入同一個 EAR 中。
- 尋找及匯入 WSDL 文件至 Web 專案中。您只能使用含有服務元素的 WSDL 檔。
- 如果您要利用 SOAP over JMS,您必須依照建立 SOAP over JMS 的伺服器和伺服器配置所說明來建立 JMS 的伺服器和伺服器配置。
- 強力建議您先啟動 WebSphere Application Server,再執行 Web 服務精靈,因為可能需要好幾分鐘才會啟動(視電腦速度而定)。如果要啟動伺服器,請在「伺服器」視圖中選取它(視窗 > 顯示視圖 > 伺服器),按一下滑鼠右鍵,然後按一下啟動。
Web 服務精靈可協助您從現有的 WSDL 文件建立 Skeleton EJB。Skeleton EJB 含有一組對應於 WSDL 文件所說明之作業的方法。當建立 EJB 時,每個方法都有一項瑣碎實作,您要編輯 Bean 來取代它。
有關 EJB 工具的進一步資訊,請參閱 EJB 工具。
如果要從 WSDL 文件建立 Skeleton EJB,請執行下列動作:
- 切換至 J2EE 視景(視窗 > 開啟視景 > J2EE)。
- 在「專案瀏覽器」視圖中,選取要在其中建立 Skeleton EJB Web 服務的 Web 專案。
- 按一下檔案 > 新建 > 其他。接著選取 Web 服務以便顯示各種 Web 服務精靈。然後選取 Web 服務精靈。按下一步。
- 「Web 服務」頁面:從 Web 服務類型下拉清單中,選取 Skeleton EJB 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 標準。
- 「選取物件」頁面:輸入用來產生 EJB Bean 之 WSDL、WSIL 或 HTML 檔的 URI。您也可以選擇性地從這個檔案產生 WSIL 檔。 確定 URI 的開頭沒有空格,或者,您也可以產生空值指標異常狀況。
- 「服務部署配置」頁面:指定伺服器和用戶端部署設定。
- 按一下編輯,選取 IBM® WebSphere® 執行時期環境,
再選取要在其中執行 Web 服務和 Web 服務用戶端的伺服器。 WebSphere 執行時期環境是這類 Web 服務唯一支援的執行時期環境。
- 選取服務專案和 Web 服務的 EAR。 如果它們還不存在,精靈會自動建立它們。
- 選取要在其中建立 Web 服務用戶端之專案的類型和名稱。如果您輸入現有專案的名稱,專案類型欄位必須符合現有專案的類型。
如果您輸入名稱的專案不存在,精靈會自動建立這個專案。請注意,只有 Web 專案是支援的 Axis 和 SOAP 執行時期用戶端專案類型。
如果您要在 Java、EJB 或應用程式用戶端專案中建立用戶端,您必須選取用戶端的 WebSphere 執行時期環境。
- 選取現有的 EAR 或輸入唯一名稱,將 Web 服務用戶端關聯於 Web 服務 EAR 以外的 EAR。附註:在 Web 服務和 Web 服務用戶端上選取不同的 EAR,可以減少發生執行時期錯誤的機會,但會使用比較多的系統資源。
- 「Web 服務 Skeleton EJB 配置」頁面:這個頁面會顯示所產生的 WSDL 檔名稱。請選取「路由器」專案(這必須是預先存在的 EJB 專案)以及 Web 服務伺服器端的安全設定。如果工作區中已有 SEI,您可以選取使用它,或者精靈可以幫您產生。如果您要使用 SOAP over JMS 做為傳輸方法,JMS URI 內容中的大部分資訊都應該會預先填入。您可能必須手動輸入接聽器埠名稱。
- 「Web 服務名稱空間至套件對映」畫面:如果您已在上一頁中選取定義名稱空間至套件的自訂對映,您可以按一下新增,在這個畫面中輸入您的自訂對映配對。另外,您也可以按一下匯入來匯入 .properties 檔中的自訂對映配對。內容檔的內容格式必須是 namespace=package。
- 「Web 服務測試」頁面:如果您要在「Web 服務瀏覽器」中測試 Web 服務,請按一下啟動。請選取您要測試的作業,輸入必要的資訊,再按一下執行。結果會顯示在「狀態」窗格中。
- 「Web 服務 Proxy」頁面:選擇是否要產生 Proxy,以及選擇是否要啟用這個 Proxy 的安全。您可以選擇性地選擇輸入自訂名稱空間至套件的對映。
- Web 服務用戶端名稱空間至套件的對映頁面:如果您在先前的畫面中選取定義名稱空間至套件的自訂對映,您可以在這個畫面中按一下新增來輸入您的自訂對映配對。
另外,您也可以按一下匯入來匯入 .properties 檔中的自訂對映配對。內容檔的內容格式必須是 namespace=package。
- 「Web 服務用戶端測試」頁面:請利用這個頁面來選取下列選項:
- 選取您的測試機能。您可以在 Universal Test Client 或 Web 服務瀏覽器中測試產生的 Proxy,
也可以產生範例 Web 服務 JSP。
- 如果您選擇利用 JSP 來測試 Proxy,您可以選取 JSP 要放在其中的資料夾,且您可以選擇要併入 JSP 的方法。
- 「Web 服務發佈」頁面:選擇是否要將這個 Web 服務發佈在 UDDI 登錄中。按一下完成。
建立好 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 服務中的指示來完成這項作業。
如果需要 EJB 的詳細資訊,請參閱 EJB 應用程式開發文件。
重要事項:從 WSDL 檔案建立 Skeleton EJB 時,將不會對新建的 EJB 產生 JNDI 名稱。當這個 EJB 在 Unit Test Environment 下執行時,主控台會顯示含有代碼 WSVR0038I 的警告,內容是「找不到 EJB 的 JNDI 名稱,將使用以 Home 介面為依據的預設連結名稱。」這個錯誤不會影響您的 Web 服務。請使用 J2EE 工具來對 EJB 指定 JNDI 名稱,以避免這個問題。