3.定義服務使用的邏輯訊息
當服務的操作被呼叫時。服務被定義為訊息交換。在wsdl文件中,這些訊息被定義message元素。
這些訊息由稱之為part元素的部分組成。
乙個服務的操作,通過指定邏輯訊息的方式來定義。當操作被呼叫時,邏輯訊息被交換。(也就是說。邏輯訊息代表了服務的操作)這些邏輯訊息,將在網路上傳輸的資料定義為xml文件。他包括了全部的引數,這些引數是方法呼叫的一部分。
(也就是說。邏輯訊息裡的引數,是操作相應方法的引數集合)
訊息和引數列表:每個被服務暴露的操作能且僅能有乙個輸入訊息和乙個輸出訊息。
輸入訊息定義當操作被呼叫時。服務接受的全部訊息。輸出訊息定義的是。當操作完畢時服務返回的全部訊息。fault訊息定義的是服務返回錯誤時的資料。
另外,每乙個操作能夠有一定數量的fault訊息。
這個fault訊息定義了當服務錯誤發生時返回的資料。這些訊息通常有乙個部分。該部分提供足夠的資訊來讓消費者知道錯誤是什麼。
訊息設計用於整合固有系統:假設你將已經存在的應用程式定義為乙個服務。你必須確保方法(實現操作的方法)中使用到的每乙個引數都可以在訊息中找到相應。你必須確保返回值也在操作的輸出訊息中。
定義你的訊息的乙個方法是:rpc風格。當使用rpc風格時,你使用給每乙個在引數列表中的引數定義乙個part。每乙個訊息part是基於在types中頂乙個的type。
你的輸入訊息為每乙個輸入引數相應乙個part,相同輸出訊息為每乙個輸出引數相應乙個part。
另外新增個part來相應返回值。假設乙個引數既是輸入,又是輸出。那麼它即作為輸入又作為輸出訊息列出來。
rpc風格的訊息定義是當服務使能存量系統時實用。
它使用類似於tibco或者corba的模式傳輸。
這些系統環繞著過程和方法來設計。正是因為這樣,他們是最easy使用訊息來建模。
rpc風格也是服務和應用程式之間的對映清晰化。
為soap服務設計訊息:當rpc風格用於建模存量系統,可是服務協會強烈地喜歡包裝文件風格。
在包裝文件風格中,每乙個訊息有乙個part。
這個訊息的part參考了乙個包裝元素。該元素定義在types元素中。包裝元素有例如以下特性:
訊息命名:每乙個訊息都在其命名空間中有唯一名字,建議使用以下的命名規則:
訊息部件:訊息部件是邏輯訊息最經常使用的單元。每乙個part被定義,用part元素。而且通過name屬性,用type屬性或element屬性來指定資料型別。
訊息同意重用part名。對於乙個例項來說,假設乙個方法有乙個引數:foo,他被應用或者通過in/out傳遞,他可以作為乙個part存在於請求或者應答訊息中。例如以下例:
該方法例如以下:
personalinfo lookup(long empid)
被對映到rpc風格的wsdl例如以下
對映到包裝風格例如以下:
...
php學習之路 WSDL詳細解釋 兩
3.定義服務使用的邏輯訊息 當服務的操作被呼叫時。服務被定義為訊息交換。在wsdl文件中,這些訊息被定義message元素。這些訊息由稱之為part元素的部分組成。乙個服務的操作,通過指定邏輯訊息的方式來定義。當操作被呼叫時,邏輯訊息被交換。也就是說。邏輯訊息代表了服務的操作 這些邏輯訊息,將在網路...
php學習之道 WSDL詳解 二
3.定義服務使用的邏輯訊息 當服務的操作被呼叫時,服務被定義為訊息交換。在wsdl文件中,這些訊息被定義message元素。這些訊息由稱之為part元素的部分組成。乙個服務的操作,通過指定邏輯訊息的方式來定義。當操作被呼叫時,邏輯訊息被交換。也就是說,邏輯訊息代表了服務的操作 這些邏輯訊息,將在網路...
php學習之道 WSDL詳解 二
3.定義服務使用的邏輯訊息 當服務的操作被呼叫時,服務被定義為訊息交換。在wsdl文件中,這些訊息被定義message元素。這些訊息由稱之為part元素的部分組成。乙個服務的操作,通過指定邏輯訊息的方式來定義。當操作被呼叫時,邏輯訊息被交換。也就是說,邏輯訊息代表了服務的操作 這些邏輯訊息,將在網路...