R2201
A document-literal binding in a DESCRIPTION MUST, in each of its
soapbind:body element(s), have
at most one part listed in the parts attribute, if the parts attribute is specified. Zero parts is permitted.
Assuming that your getAllSectors operation is defined as document/literal, Axis should not insert the <getAllSectors xmlns="urn: remote.ws.mycompany.org"/> element into the SOAP Body. The Body should be empty. Axis should insert the method name element only if the operation is defined as rpc style.
[1] http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#WSDLMSGS
Anne
On 3/16/06,
Lars Torunski <[EMAIL PROTECTED]> wrote:
I got stuck in a discussion between two consultants if Axis 1.3 fulfills the WSDL 1.1 specification for document/literal correctly.
Consultant 1:
Taken from http://www.w3.org/TR/wsdl#_messages (2.3 Messages) the message is defined by "Messages consist of one or more logical parts.".
Consultant 2:
On the other hand the WSDL schema definition in http://www.w3.org/TR/wsdl#A4.1 defines "wsdl:part" with <element ref="wsdl:part" minOccurs="0" maxOccurs="unbounded"/>
Consultant 1:
This maybe contradictory, but this is because WSDL may use either by "rpc" or "document" styles. Per RPC, of course, <message> may be without any <part>. Unfortunately, this is not the case with "document" style. For "document" style only the <message> <part> are sent. No other leading information is used. Thus, the inner message-parts in this case are must. One MUST NOT discard message-parts when "document" style is used.
Me:
We have a message "getAllSectors" defined as <wsdl:message name="getAllSectorsRequest"> </wsdl:message> Thus, no <part> is defined. Axis 1.3 create the following http request:
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd=" http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><getAllSectors xmlns="urn: remote.ws.mycompany.org"/></soapenv:Body></soapenv:Envelope>
What do you think? Is there a problem in our wsdl file or is this a bug in Axis 1.3 by using document/literal?
