Java Reference
In-Depth Information
<soap:operation
soapAction="http://soacookbook.com/GetLastTradePrice"/>
<input><soap:body use="literal"/></input>
<output><soap:body use="literal"/></output>
</operation>
</binding>
<service name="StockQuoteService">
<documentation>Returns the current price for a given ticker.
</documentation>
<port name="StockQuotePort" binding="tns:StockQuoteBinding">
<soap:address location="http://soacookbook.com/quote"/>
</port>
</service>
</definitions>
Here the concrete WSDL imports the abstract WSDL defined in a separate document. The
concrete WSDL indicates how and where to consume a service (“use SOAP and go to this
URI”). The abstract WSDL indicates what the service does by showing the operations it per-
forms, as well as the data types required to use those operations.
To perform a WSDL import in this way, the import needs to be the first statement following
the <wsdl:definitions> element.
This modularity of design allows you to provide different binding possibilities or service
URIs, and still maintain the basic interface definition. It can be easier to use and maintain
WSDLs that are specified this way. It also can aid with interoperability because it allows you
to give clients on other platforms a SOAP interface, for example, and other clients a different
transport. You might also define a service that uses both MIME and DIME types for attach-
ments. If that case, you could indicate support in two different concrete WSDLs that both im-
port the same abstract WSDL.
You can read the WSDL 1.1 specification at http://www.w3.org/TR/wsdl .
Search WWH ::




Custom Search