Re: Axis 1.3 document literal and no parts in the message

2006-03-17 Thread Anne Thomas Manes
The WSDL 1.1 spec has a bunch of errors in it. (It's not a formal standard, after all.) The WS-I Basic Profile clarifies these errors. See section 4.4 [1] for clarifications related to messages and parts. To whit:

   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 AnneOn 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-instancesoapenv:BodygetAllSectors xmlns=urn:
remote.ws.mycompany.org//soapenv:Body/soapenv:EnvelopeWhat do you think? Is there a problem in our wsdl file or is this a bug in Axis 1.3 by using document/literal?



Axis 1.3 document literal and no parts in the message

2006-03-16 Thread Lars Torunski

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:BodygetAllSectors 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?





Re: Axis 1.3 document literal and no parts in the message

2006-03-16 Thread Junaid . Bhatra
As per your WSDL (message with no parts), for doc/literal style, the
correct SOAP message should be an empty SOAP body, with no child elements.
However that being said, if this is an input message, I'm not sure if it
makes much sense to send an empty SOAP message to the server, since the
server can only dispatch based on the QName of SOAP body child element (not
sure if the server has the ability to dispatch based on an empty QName).
But if this were an output message, then it's fine to expect an empty SOAP
body, which would model a void return type from your service method.
Regardless, this does look like a bug if you are using doc/literal style.

Maybe Anne (or someone else) can comment further on this.

- Junaid



   
 Lars Torunski 
 [EMAIL PROTECTED] 
 ne.de To 
   axis-user@ws.apache.org 
 03/16/2006 03:56   cc 
 PM
   Subject 
   Axis 1.3 document literal and no
 Please respond to parts in the message
 [EMAIL PROTECTED] 
  he.org   
   
   
   
   




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:BodygetAllSectors
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?