简体   繁体   中英

WSDL binding difference

In WSDLs generated by AXIS and CXF, there are always defined three binding elements.
As reported in the following sample WSDL describing a temperature conversion service:

<wsdl:binding name="ConverterSoap11Binding" type="ns:ConverterPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="celsiusToFarenheit">
<soap:operation soapAction="urn:celsiusToFarenheit" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="farenheitToCelsius">
<soap:operation soapAction="urn:farenheitToCelsius" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="ConverterSoap12Binding" type="ns:ConverterPortType">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="celsiusToFarenheit">
<soap12:operation soapAction="urn:celsiusToFarenheit" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="farenheitToCelsius">
<soap12:operation soapAction="urn:farenheitToCelsius" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="ConverterHttpBinding" type="ns:ConverterPortType">
<http:binding verb="POST"/>
<wsdl:operation name="celsiusToFarenheit">
<http:operation location="celsiusToFarenheit"/>
<wsdl:input>
<mime:content type="application/xml" part="parameters"/>
</wsdl:input>
<wsdl:output>
<mime:content type="application/xml" part="parameters"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="farenheitToCelsius">
<http:operation location="farenheitToCelsius"/>
<wsdl:input>
<mime:content type="application/xml" part="parameters"/>
</wsdl:input>
<wsdl:output>
<mime:content type="application/xml" part="parameters"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>

what's the difference between these three kind of bindings ?

First see this diagram wsdl structure

Bindings: Read

So there are three ways (message and transport protocol) to access your web service ie

ConverterSoap11Binding (Message Protocol: SOAP 1.1 )

ConverterSoap12Binding (Message Protocol: SOAP 1.2 )

ConverterHttpBinding (Message Protocol: HTTP POST )

In all above binding transport protocol will be HTTP (as in your service address).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM