The SOAP 1.1 spec was unclear on what to do with multiple elements in the SOAP Body. Therefore the powers that be (WS-I and the W3C SOAP 1.2 group) pow-wowed on the issue and pronounced that multiple elements are not allowed.

If you want to send two "parameters" in a doc/literal message, wrap them in a wrapper object. Note that doc/literal technically does not support "parameters". You use doc/literal to send a document. If you wish to send multiple documents, either wrap them in a wrapper element or send them as attachments to the SOAP message.

Anne

On 5/7/06, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
Hi Samisa;

As Nabeel mentioned, using ServiceCleint API you can not send more than
one child in the body. But using operation client you can send any SOAP
envelop.
In the receiving side if you use default message receivers none of them
can not handle this scenario , since we have a valid assumption that
SOAP body can not have two parts.

I can not say this is invalid use case ,but to have this feature in
server side he has to write his own message receiver to handle this.
Since this is not a common scenario I dont think we have to have default
message receiver for handling this.

Samisa Abeysinghe wrote:

> What is the solution for the following query in the Java Axis2?
> P.S. Forwarding from Axis2/C list:
>
> |
>
> |If I have a doc/lit ws how do I code a client to produce the message:|
>
> |<soap:envelope>
>    <soap:body>
>        <x>fred</x>
>        <y>joe</y>
>    </soap:body>
> </soap:envelope>|
>
> |
> |The client APIs seem to take a single axis2_om_node_t* payload which
> I assume is inserted into the soap body. Is there an API to add more
> than one element as above? |
> || |Cheers,|
> ||


--
Thanks,
Deepal
................................................................
~Future is Open~



Reply via email to