WSDL 綁定
WSDL 綁定可為 web service 定義消息格式和協議細節。
綁定到 SOAP
一個 請求 - 響應 操作的例子:
<message name="getTermRequest">
? <part name="term" type="xs:string"/>
</message>
<message name="getTermResponse">
? <part name="value" type="xs:string"/>
</message>
<portType name="glossaryTerms">
? <operation name="getTerm">
??? <input message="getTermRequest"/>
??? <output message="getTermResponse"/>
? </operation>
</portType>
<binding type="glossaryTerms" name="b1">
?? <soap:binding style="document"
?? transport="http://schemas.xmlsoap.org/soap/http" />
?? <operation>
???? <soap:operation soapAction="http://example.com/getTerm"/>
???? <input><soap:body use="literal"/></input>
???? <output><soap:body use="literal"/></output>
? </operation>
</binding>
binding 元素有兩個屬性 - name 屬性和 type 屬性。
name 屬性定義 binding 的名稱,而 type 屬性指向用于 binding 的端口,在這個例子中是 "glossaryTerms" 端口。
soap:binding 元素有兩個屬性 - style 屬性和 transport 屬性。
style 屬性可取值 "rpc" 或 "document"。在這個例子中我們使用 document。transport 屬性定義了要使用的 SOAP 協議。在這個例子中我們使用 HTTP。
operation 元素定義了每個端口提供的操作符。
對于每個操作,相應的 SOAP 行為都需要被定義。同時您必須如何對輸入和輸出進行編碼。在這個例子中我們使用了 "literal"。