WebSphere Message Service Clients: Web Services Client for C++, Version 1.1 作業系統: Linux, Windows

用戶端開發和部署

Web Services Client for C++ 可讓您管理用戶端與 Web 服務伺服器之間的傳訊。

Web 服務是基於稱為 WSDL 的檔案(其為 XML 檔案),其中包含 與網際網路特定位置的可用服務相關的所有資訊。WSDL 的最簡單層次會詳細說明要求與回應訊息配對, 並且包含與 Web 服務相關的所有資訊。Web Services Client for C++ 套件提供一個 Java 程式,稱為 WSDL2Ws 工具。 這個工具可讓您將 WSDL 變成一套 C++ Stub 和資料物件, 讓您呼叫並傳送資訊給它們,以及讓您從伺服器要求資訊,等待對應的回覆, 之後再將回應資料物件傳送回用戶端。Stub 會使應用程式撰寫者無法看見網際網路通訊。您只需要知道服務名稱、 其中包含的方法,以及任何傳送的資料物件結構。

有兩種不同的方法可以使用 Web Services Client for C++

這兩種方法都可以正常使用,但不建議您使用第二個方法, 因為用戶端應用程式撰寫者必須知道 API 以及用戶端與伺服器之間的通訊協定。另外,如果需要變更, 撰寫者必須以手動方式變更程式碼,這樣更容易發生錯誤。建議的實作方式是使用 WSDL 來說明訊息以及任何相關聯的 XSD,然後使用 WSDL2Ws 工具來產生 Stub。

下面這三個圖解說明利用這個建議的 Web Services Client for C++ 實作方式來將 WSDL 轉換成 Web 服務時所需要的動作。

從 WSDL 程式檔產生用戶端 Stub

圖 1 說明第一個步驟,也就是將 WSDL 轉換成一組可供用戶端應用程式呼叫的 C++ 用戶端 Stub

圖 1. WSDL 程式檔和 C++ Stub 之間的程序流程
這個圖解顯示將 WSDL 轉換成 Web 服務之程序中的第一步,
說明 WSDL 程式檔和 C++ Stub 之間的程序流程,以及顯示將 WSDL 傳送到 WSDL2Ws 工具中來產生 Stub。

用戶端和伺服器應用程式之間的通訊

如同圖 2 中所顯示的狀況, 用戶端應用程式會對 Stub 中的服務呼叫一個方法。這個方法會呼叫 AxisClient 程式庫中的許多基礎方法, 來產生與伺服器通訊的 SOAP 訊息。

圖 2. 利用 WSDL2Ws 產生的 Stub,在用戶端和伺服器應用程式之間進行的程序流程
這個圖解顯示將 WSDL 程式檔轉換成 Web 服務之程序中的第二步,
說明利用產生的 C++ Stub 來進行的用戶端和伺服器應用程式之間的程序流程。
用戶端應用程式會對 Stub 中的服務呼叫一個方法,然後呼叫 AxisClient 程式庫中的一些基礎方法,
來產生與伺服器通訊的 SOAP 訊息。

新增 Web 服務處理常式

您可以新增 Web 服務處理常式至 AxisClient 程式庫,以容許進一步處理 SOAP 訊息(在將訊息傳輸到伺服器之前,或者在從伺服器收到相對應的回覆之後)。 Web 服務部署描述子 (WSDD) 檔可控制處理常式的用法。圖 3 是 修改過的 圖 2 版本,它會顯示如何將 處理常式連結到 AxisClient 程式庫中。

圖 3. 利用產生的 Stub、要求和回應處理常式,在用戶端和伺服器應用程式之間進行的程序流程
這個圖解顯示將 WSDL 程式檔轉換成 Web 服務之程序中的第三步,
說明在將要求和回應處理常式連結到 AxisClient 程式庫時,在用戶端和伺服器應用程式之間的程序流程。
處理常式定義是在 WSDD 檔中指定。


Concept topic

使用條款 | 此頁的評等

「時間戳記」圖示前次更新: 28 Apr 2006
(C) Copyright IBM Corporation 2005. All Rights Reserved.
本資訊中心採用 Eclipse 技術。(http://www.eclipse.org)