Hi all!
What are the versions of SOAP protocol supported by Lansa Integrator?
I've done the tutorial about how to create a SOAP server and a SOAP client with Integrator and it seems that it is using the version 1.1 of the SOAP protocol. Am I right?
Does Lansa Integrator support the version 1.2 of the SOAP protocol?
Thanks in advance
SOAP protocol versions supported by Lansa Integrator
Re: SOAP protocol versions supported by Lansa Integrator
LI SOAP uses Apache Axis 1.4
Apache Axis 1.4 supports:
WSDL 1.1
SOAP 1.1
SOAP 1.2 Candidate Recommendation
http://wiki.apache.org/ws/FrontPage/Axi ... sSupported
In summary,
SOAPServerWizard generates WSDL 1.1 and SOAP 1.1
SOAPAgentWizard can consume WSDL 1.1, SOAP 1.1 and SOAP 1.2 ( candidate recommendation )
=========================================================================
SOAP 1.1 to SOAP 1.2
http://www.w3.org/2003/06/soap11-soap12.html
XML Namespaces
The XML namespaces for the envelope and encoding schemas have changed.
This allows SOAP processors to easily distinguish between SOAP 1.1 and SOAP 1.2 messages and allows changes in the SOAP schema without affecting existing implementations.
SOAP 1.1 - <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
SOAP 1.2 - <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
Trailers
SOAP 1.1 allows additional elements to follow the SOAP Body element, SOAP 1.2 disallows these.
SOAP 1.1
<e:Envelope ...>
<e:Header>
0 or more headers
</e:Header>
<e:Body>
message body
</e:Body>
other elements
</e:Envelope>
SOAP 1.2
<e:Envelope ...>
<e:Header>
0 or more headers
</e:Header>
<e:Body>
message body
</e:Body>
</e:Envelope>
Fault Codes
SOAP 1.2 adds new fault codes:
"DTDNotSupported" - generated when a received message contains a document type declaration.
"DataEncodingUnknown" - generated when a received message uses an unrecognised value of the encodingStyle attribute.
The SOAP 1.1 "Client" fault code is renamed "Sender" in SOAP 1.2.
The SOAP 1.1 "Server" fault code is renamed "Receiver" in SOAP 1.2.
Hierarchical Fault Codes
SOAP 1.1 allows extension of fault codes using a "dot" notation, SOAP 1.2 disallows this and provides a more XML-like representation instead.
SOAP 1.1
<e:Fault>
<faultcode>e:Server.Memory</faultcode>
<faultstring>Out of memory</faultstring>
</e:Fault>
SOAP 1.2
<e:Fault>
<faultcode>
<value>e:Receiver</value>
<subcode>
<value>p:Memory</value>
</subcode>
</faultcode>
<faultstring>Out of memory</faultstring>
</e:Fault>
Misunderstood Header
SOAP 1.2 adds a new standard header for reporting additional information in "MustUnderstand" faults.
Processing Model
SOAP 1.2 clarifies the processing model of SOAP 1.1. In particular a SOAP node should process an incoming message according to the following rules in the order given:
1. Determine the roles the node is to play. I.e. the values of the role attribute for which it will assume processing liability.
2. Identify mandatory headers targetted to the node. I.e. header marked with a mustUnderstand="true" attribute and a role attribute with a value matching one of the roles determined in step 1.
3. Generate a "MustUnderstand" fault if one or more of the headers identified in step is not understood. I.e. the node does not contain software for processing the header.
4. Process headers and, if the node is the ultimate receipient, the body of the message.
5. If the node is acting as an intermediary remove headers targetted at the node and forward the message.
Versioning Mechanism
SOAP 1.2 adds semantics for dealing with messages from different versions of SOAP:
A SOAP 1.2 node that receives a SOAP 1.1 message will respond with a SOAP 1.1 envelope containing a SOAP 1.1 "VersionMismatch" fault.
A SOAP 1.2 node that receives a message from any other version of SOAP (including future versions) will respond with a SOAP 1.2 envelope containing a SOAP 1.2 "VersionMismatch" fault and an Upgrade header with a list of the supported envelope versions.
Content Type
The media type for SOAP 1.2 has changed from text/xml used in SOAP 1.1 to application/soap+xml.
SOAPAction
The SOAP 1.1 mandatory SOAPAction HTTP header has been removed in SOAP 1.2.
In its place is an optional action parameter on the application/soap+xml media type.
HTTP GET
SOAP 1.2 adds support for the use of HTTP GET in the SOAP HTTP binding.
An example of a HTTP GET request is shown below:
GET /itinerary?reservation=1234567890 HTTP/1.1
Host: travelcompany.com
Accept: application/soap+xml
Note the use of the Accept header to indicate that a SOAP response is required. The SOAP node might respond with:
=========================================================================
Apache Axis 1.4 supports:
WSDL 1.1
SOAP 1.1
SOAP 1.2 Candidate Recommendation
http://wiki.apache.org/ws/FrontPage/Axi ... sSupported
In summary,
SOAPServerWizard generates WSDL 1.1 and SOAP 1.1
SOAPAgentWizard can consume WSDL 1.1, SOAP 1.1 and SOAP 1.2 ( candidate recommendation )
=========================================================================
SOAP 1.1 to SOAP 1.2
http://www.w3.org/2003/06/soap11-soap12.html
XML Namespaces
The XML namespaces for the envelope and encoding schemas have changed.
This allows SOAP processors to easily distinguish between SOAP 1.1 and SOAP 1.2 messages and allows changes in the SOAP schema without affecting existing implementations.
SOAP 1.1 - <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
SOAP 1.2 - <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
Trailers
SOAP 1.1 allows additional elements to follow the SOAP Body element, SOAP 1.2 disallows these.
SOAP 1.1
<e:Envelope ...>
<e:Header>
0 or more headers
</e:Header>
<e:Body>
message body
</e:Body>
other elements
</e:Envelope>
SOAP 1.2
<e:Envelope ...>
<e:Header>
0 or more headers
</e:Header>
<e:Body>
message body
</e:Body>
</e:Envelope>
Fault Codes
SOAP 1.2 adds new fault codes:
"DTDNotSupported" - generated when a received message contains a document type declaration.
"DataEncodingUnknown" - generated when a received message uses an unrecognised value of the encodingStyle attribute.
The SOAP 1.1 "Client" fault code is renamed "Sender" in SOAP 1.2.
The SOAP 1.1 "Server" fault code is renamed "Receiver" in SOAP 1.2.
Hierarchical Fault Codes
SOAP 1.1 allows extension of fault codes using a "dot" notation, SOAP 1.2 disallows this and provides a more XML-like representation instead.
SOAP 1.1
<e:Fault>
<faultcode>e:Server.Memory</faultcode>
<faultstring>Out of memory</faultstring>
</e:Fault>
SOAP 1.2
<e:Fault>
<faultcode>
<value>e:Receiver</value>
<subcode>
<value>p:Memory</value>
</subcode>
</faultcode>
<faultstring>Out of memory</faultstring>
</e:Fault>
Misunderstood Header
SOAP 1.2 adds a new standard header for reporting additional information in "MustUnderstand" faults.
Processing Model
SOAP 1.2 clarifies the processing model of SOAP 1.1. In particular a SOAP node should process an incoming message according to the following rules in the order given:
1. Determine the roles the node is to play. I.e. the values of the role attribute for which it will assume processing liability.
2. Identify mandatory headers targetted to the node. I.e. header marked with a mustUnderstand="true" attribute and a role attribute with a value matching one of the roles determined in step 1.
3. Generate a "MustUnderstand" fault if one or more of the headers identified in step is not understood. I.e. the node does not contain software for processing the header.
4. Process headers and, if the node is the ultimate receipient, the body of the message.
5. If the node is acting as an intermediary remove headers targetted at the node and forward the message.
Versioning Mechanism
SOAP 1.2 adds semantics for dealing with messages from different versions of SOAP:
A SOAP 1.2 node that receives a SOAP 1.1 message will respond with a SOAP 1.1 envelope containing a SOAP 1.1 "VersionMismatch" fault.
A SOAP 1.2 node that receives a message from any other version of SOAP (including future versions) will respond with a SOAP 1.2 envelope containing a SOAP 1.2 "VersionMismatch" fault and an Upgrade header with a list of the supported envelope versions.
Content Type
The media type for SOAP 1.2 has changed from text/xml used in SOAP 1.1 to application/soap+xml.
SOAPAction
The SOAP 1.1 mandatory SOAPAction HTTP header has been removed in SOAP 1.2.
In its place is an optional action parameter on the application/soap+xml media type.
HTTP GET
SOAP 1.2 adds support for the use of HTTP GET in the SOAP HTTP binding.
An example of a HTTP GET request is shown below:
GET /itinerary?reservation=1234567890 HTTP/1.1
Host: travelcompany.com
Accept: application/soap+xml
Note the use of the Accept header to indicate that a SOAP response is required. The SOAP node might respond with:
=========================================================================
Re: SOAP protocol versions supported by Lansa Integrator
LI SOAP services have limited support for SOAP 1.2
Re: SOAP protocol versions supported by Lansa Integrator
Hi
Do we have an update on this SOAP 1.2 for V14 SP2?
We are trying to use the SOAP Agent Wizard with a SOAP 1.2 and getting the error:
java.lang.illegalArgumentsException: LUXWSDLTool: no stub accessor was created
Thank you
Do we have an update on this SOAP 1.2 for V14 SP2?
We are trying to use the SOAP Agent Wizard with a SOAP 1.2 and getting the error:
java.lang.illegalArgumentsException: LUXWSDLTool: no stub accessor was created
Thank you