Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space WBRIDGE and version 24.0
Section
Column

Binding Types

SOAP Binding

Anchor
9_import_-_export_mechanisms_9_1_6394
9_import_-_export_mechanisms_9_1_6394
The WSDL Importer supports SOAP bindings only. Each extension element of the SOAP binding is covered in subsequent sections.

HTTP GET & POST Binding

Anchor
9_import_-_export_mechanisms_9_1_2299
9_import_-_export_mechanisms_9_1_2299
Not supported by the WSDL Importer yet. You will get an error message that ports having this binding are ignored. However, accessing such services can easily be done using the URL Adapter. Importing a WSDL file that contains services having both SOAP and HTTP GET & POST bindings will result in the import of the ports associated with the SOAP binding neglecting ports having different bindings.

Column
width30%

Otp
Floatingfalse

MIME Binding

Anchor
9_import_-_export_mechanisms_9_1_7539
9_import_-_export_mechanisms_9_1_7539
Not supported by the WSDL Importer yet. You will get an error message that ports having this binding are ignored. However, accessing such services can easily be done using the URL Adapter. Importing a WSDL file that contains services having both SOAP and MIME bindings will result in the import of the ports associated with the SOAP binding neglecting ports having different bindings.

List of all Binding Elements

Anchor
9_import_-_export_mechanisms_9_1_7926
9_import_-_export_mechanisms_9_1_7926
soap:binding

Anchor
9_import_-_export_mechanisms_9_1_6152
9_import_-_export_mechanisms_9_1_6152
The Importer supports two types of soap:bindings: document
Anchor
9_import_-_export_mechanisms_9_1_2992
9_import_-_export_mechanisms_9_1_2992
 and RPC
Anchor
9_import_-_export_mechanisms_9_1_4388
9_import_-_export_mechanisms_9_1_4388
 style. Examples of these two bindings are found in the following table:

Figure: Valid soap:binding examples and their UML counterparts

Code Block
languagehtml/xml
<binding name="StockQuoteSoapBinding" 
 type="tns:StockQuotePortType">
	<soap:binding style="document" 
     transport="http://schemas.xmlsoap.org/ 
     soap/http"/> 
  	<operation name="GetLastTradePrice"> 
   	<soap:operation/> 
   		<input> 
     		<soap:body use="literal"/> 
   		</input> 
   		<output> 
     		<soap:body use="literal"/> 
   		</output> 
  	</operation> 
</binding>
Code Block
languagehtml/xml
<binding name="GoogleSearchBinding" 
 type="tns:GoogleSearchPortType"> 
	<soap:binding style="rpc" 
     transport="http://schemas.xmlsoap. 
     org/soap/http"/> 
  	<operation name="doGoogleSearch"> 
   	<soap:operation 
     soapAction= 
   	 "urn:GoogleSearchAction"/> 
   		<input> 
    		<soap:body use="encoded" 
    		 namespace="urn:GoogleSearch" 
    		 encodingStyle= 
    		 "http://schemas.xmlsoap. 
    		 org/soap/encoding/"/> 
   		</input> 
   		<output> 
    		<soap:body use="encoded" 
    		 namespace="urn:GoogleSearch" 
    		 encodingStyle= 
    		 "http://schemas.xmlsoap. 
    		 org/soap/encoding/"/> 
   		</output> 
	</operation> 
</binding>

Image Modified

Image Modified

The encoding of the operation is given by the stereotype <<DocumentEncoding>>

Anchor
9_import_-_export_mechanisms_9_1_3994
9_import_-_export_mechanisms_9_1_3994
 if the WSDL binding style is document. If we have an RPC style operation no stereotype is given. The Importer will report an error in all other cases.
The SOAP action value is put into the soapAction tagged value.

Anchor
9_import_-_export_mechanisms_9_1_2594
9_import_-_export_mechanisms_9_1_2594
soap:operation

Anchor
9_import_-_export_mechanisms_9_1_2315
9_import_-_export_mechanisms_9_1_2315
The soap:operation element contains the soapAction attribute (see figure Valid soap:binding examples and their UML counterparts ). This attribute gets imported as soapAction tagged value.

Anchor
9_import_-_export_mechanisms_9_1_6512
9_import_-_export_mechanisms_9_1_6512
soap:body

Anchor
9_import_-_export_mechanisms_9_1_8747
9_import_-_export_mechanisms_9_1_8747
The soap:body element specifies how the message parts appear inside the SOAP Body element.
The soap:body binding element provides information on how to assemble the different message parts inside the Body element of the SOAP message. The soap:body element is used in both RPC-oriented and document-oriented messages, but the style of the enclosing operation has important effects how the WSDL Importer handles the soap:body element:

  • If the operation style is RPC each part of the associated message is a parameter or a return. These parts must have a type attribute referring to a SOAP encoded type schema. Thus, the Importer will report an error if the soap:body element does not contain the following attributes: use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/".
  • If the operation style is Document each part of the associated message is an element of a XML Schema. These parts must have an element attribute refering to a literal XML Schema. Thus, the Importer will report an error if the soap:body element does not contain the following attributes: use="literal".

Anchor
9_import_-_export_mechanisms_9_1_8036
9_import_-_export_mechanisms_9_1_8036
soap:fault

Anchor
9_import_-_export_mechanisms_9_1_6455
9_import_-_export_mechanisms_9_1_6455
The soap:fault element specifies the contents of the SOAP Fault Details element. This element is not supported by the Importer. If a SOAP fault occurs, the Bridge generates internally an exception containing the fault code. This exception can then be handled by the modeler. The contents of the SOAP Fault Details element is put into the message part of the Bridge exception as plain string.

Anchor
9_import_-_export_mechanisms_9_1_6169
9_import_-_export_mechanisms_9_1_6169
soap:header and soap:headerfault

Anchor
9_import_-_export_mechanisms_9_1_9181
9_import_-_export_mechanisms_9_1_9181
Not supported by the WSDL Importer yet.

Anchor
9_import_-_export_mechanisms_9_1_4053
9_import_-_export_mechanisms_9_1_4053
soap:address

Anchor
9_import_-_export_mechanisms_9_1_4939
9_import_-_export_mechanisms_9_1_4939
The soap:address element defines the physical location of a port contained in a service. In UML, this information is expressed in deployment diagrams. The following table compares a WSDL fragment to the corresponding UML diagram:

Figure: soap:address and its Meaning for UML Deployment Diagrams

Code Block
languagehtml/xml
<service name ="StockQuoteService"> 
	<documentation>My first service</documentation> 
	<port name="StockQuotePort" 
	      binding ="tns:StockQuoteSoapBinding"> 
		<soap:address 
	     location ="http://example.com/stockquote"/> 
    </port> 
</service>

Image Modified

 


The above table shows that the soap:address location value is split into its parts. The protocol part becomes the protocol tagged value at port instance StockQuotePort.  The network port becomes the port tagged value and the path information is put into yet another tagged value, namely path. The physical location encoded in the location attribute is mapped to an UML node instance having the name of a physical address, in this example: example.com.

Panel
titleOn this Page:
Table of Contents