Yes -- that is correct. If you are using document style, your message part MUST reference an element.
Anne On 9/21/06, Kedar, Shahar <[EMAIL PROTECTED]> wrote:
Hi Anne, Does this mean that if I'm using the Doc style, and my operation has an input of native type (let say integer), then I'm required to have an element tag in the schema with @type xsd:integer, and in the message tag have a wsdl:part tag with @element and not @type? Regards, Shahar Kedar -----Original Message----- From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 20, 2006 7:48 PM To: [email protected] Subject: Re: [Axis2] Using 'type' attribute for the message part Brennan, The semantics of type vs element in <wsdl:part> is defined in the WS-I Basic Profile, Section 4.4.1 [1]. You must use @type when using RPC style; you must use @element when using document style. With document style, you specify the literal schema of the element contained in the SOAP Body; therefore, the message may contain at most one body part, and that part must reference an element definition. It must not reference a type definition. With RPC style, you specify the types of the parameters that must be passed in the SOAP Body, but not the literal schema. The message definition must contain a part for each parameter, and those parts must reference a type definition. At runtime, the SOAP engine is responsible for dynamically constructing the element contained in the SOAP Body as follows: - It generates a wrapper element that has the same local name as the operation, and which is qualified by the namespace specified in the <soap:body> definition in the binding. This wrapper element has no formally specified type or schema. - It generates an accessor element for each parameter. The accessor elements are non-qualified, and they get their local name from the @name in the <wsdl:part>. The type of each accessor element is the type specified in the WSDL part definition. For example, if you have: <wsdl:message name="opRequest"> <wsdl:part name="param1" type="xsd:string"/> <wsdl:part name="param2" type="xsd:string"/> </wsdl:message> ... <wsdl:binding ...> <soap:binding style="rpc" ...> <wsdl:operation name="op"> ... <wsdl:input> <soap:body use="literal" namespace="urn:example:rpc"/> </wsdl:input> ... </wsdl:operation> </wsdl:binding> The message on the wire would look like: <soap:Body> <ns1:op xmlns:ns1="urn:example:rpc"> <param1>some string</param1> <param2>some string</param2> </ns1:op> </soap:Body> [1] http://www.ws-i.org/Profiles/BasicProfile-1.1.html#Bindings_and_Parts On 9/18/06, Spies, Brennan <[EMAIL PROTECTED]> wrote: > Yes, I am using the most recent nightly build. The input and output is > Doc/literal... > > > <wsdl:binding name="ActionSoapHttp" type="tns:ActionInterface"> > <soap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http" /> > <wsdl:operation name="Action"> > <soap:operation > > soapAction="urn:ejgallo:workflow:service:action/Action" /> > <wsdl:input> > <soap:body use="literal" /> > </wsdl:input> > <wsdl:output> > <soap:body use="literal" /> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > > > I can file a bug (no problem) since it's clear the lack of a return doc is a > bug, but I also wanted to know what is meant when a 'type' is specified in > the WSDL, i.e., what SHOULD be the result of such a configuration in terms of > what is generated in the SOAP, and more specifically to Axis2, the generated > classes? > > Brennan > > -----Original Message----- > From: Ajith Ranabahu [mailto:[EMAIL PROTECTED] > Sent: Monday, September 18, 2006 11:42 AM > To: [email protected]; [EMAIL PROTECTED] > Subject: Re: [Axis2] Using 'type' attribute for the message part > > Hi, > What kind of binding do you have ? > > Ajith > > On 9/18/06, Davanum Srinivas <[EMAIL PROTECTED]> wrote: > > Are u using the nightly build? If so, please open a issue/bug. > > > > thanks, > > dims > > > > On 9/18/06, Spies, Brennan <[EMAIL PROTECTED]> wrote: > > > Axis devs, > > > > > > Got a question regarding the use of types for message parts rather than > > > elements...specifically, what are the semantics of it? Reading the WSDL > spec > > > does not clarify this for me. > > > > > > For example, suppose you have an output message defined as > > > > > > <message name="Response"> > > > <part name="output" type="ns:responseType"/> > > > </message> > > > > > > Using the Axis code generator with XMLBeans databinding, the ResponseType > > > class will be generated, but there is no corresponding *Document class. > Also, > > > the methods in the generated code look more like an IN ONLY MEP rather > than > > > IN-OUT--i.e., the skeleton has no return value, hence no meaningful SOAP > > > response is generated. > > > > > > Brennan > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > -- > > Davanum Srinivas : http://www.wso2.net (Oxygen for Web Service Developers) > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > Ajith Ranabahu > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
