如果您使用處理常式,就必須配置 WSDD 檔, 其中包含負責控管 AxisClient 何時必須呼叫處理常式程式庫的規則。服務處理常式和廣域處理常式是在WSDD 檔的個別區段中定義。
WSDD 檔是使用 XML 樣式的檔案,其中包含 Web Services Client for C++ 用來建置 要求訊息以及解碼回應訊息的資訊。WSDD 檔包含兩個主要區段, 一個用於服務處理常式,另一個用於廣域處理常式。 如果是服務處理常式,每一個需要處理常式的服務定義都必須使用針對 pre-pivot 和 post-pivot 呼叫所給定的適當處理常式清單來定義。如果是廣域處理常式,WSDD 檔 只需要列出要在 pre-pivot 和 post-pivot 中呼叫的處理常式。 如果需要廣域處理常式的進一步資訊,請參閱WSDD 檔。
下表顯示在要求和回應端呼叫處理常式時, 所需要的 WSDD 檔的逐行範例。請注意, 處理常式檔案名稱可能會依作業系統而有所不同。這個範例中所使用的檔案名稱是針對 Windows。
行號 | WSDD 行 |
---|---|
1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:C="http://xml.apache.org/axis/wsdd/providers/c"> |
3 | <service name="Handler" provider="CPP:DOCUMENT" description="Handler"> |
4 | <requestFlow> |
5 | <handler name="myClientHandlerReq"
type="<inst_dir>\samples\handlers\myClientHandler.dll">
|
6 | </handler> |
7 | </requestFlow> |
8 | <responseFlow> |
9 | <handler name="myClientHandlerRes"
type="<inst_dir>\samples\handlers\myClientHandler.dll">
|
10 | </handler> |
11 | </responseFlow> |
12 | </service> |
13 | </deployment> |
下表說明 WSDD 檔的重要部分:
行號 | 說明 |
---|---|
2 | 部署標示是根元素。 |
3 | service 標示可定義 Axis 服務的類型。name 屬性可定義服務的名稱。provider 屬性可定義 服務的提供者名稱,而且必須出現在 xmlns:C="http://xml.apache.org/axis/wsdd/providers/c”中。 description 屬性可定義這一行的備註。 |
4 | requestFlow 標示可定義將要傳輸要求訊息時,所呼叫的一或多個處理常式的清單開頭。 處理常式會依照它們在 WSDD 檔中的出現次序來呼叫。 |
5 | requestFlow 內的 handler 標示可定義要呼叫的唯一處理常式名稱以及它的類型,這個類型是處理常式位置的完整路徑。 |
8 | responseFlow 標示可定義剛收到回應訊息時,所呼叫的一或多個處理常式的清單開頭。 處理常式會依照它們在 WSDD 檔中的出現次序來呼叫。 |
9 | responseFlow 內的 handler 標示可定義要呼叫的唯一處理常式名稱以及它的類型,這個類型是處理常式位置的完整路徑。 |
如需每一個標示以及其中可能包含之組件的詳細說明, 請參閱WSDD 檔。