axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amila Suriarachchi" <amilasuriarach...@gmail.com>
Subject Re: [Axis2] Soap Encoding support with ADB
Date Fri, 28 Dec 2007 08:18:16 GMT
I went through the soap 1.1 spec and found this as the first serialization
rule.

All values are represented as element content. A multi-reference value MUST
be represented as the content of an independent element. A single-reference
value SHOULD not be (but MAY be)

It only says if we use multirefs those multi referenced values must be top
elements. But single
reference values are also allowed.

So in axis2 we can use the single references as the default serialization.

thanks,
Amila.

On Dec 28, 2007 12:19 PM, Glen Daniels <glen@thoughtcraft.com> wrote:

> Hey Amila:
>
> >     won't need them.  But for SOAP 1.1, the situation is different.  The
> >     encoding spec says you MUST encode all complex object types as
> top-level
> >     members of the serialization.  Therefore ALL conforming SOAP 1.1
> >     encoding implementations will be putting out stuff that looks like
> this:
> >
> >     <soap:body>
> >       <operation>
> >         <arg1 href="#obj1"/>
> >       </operation>
> >       <multiref id="obj1">
> >         <name>the real argument</name>
> >         <color>blue</color>
> >       </multiref>
> >     </soap:body>
> >
> > is this means it is allowed to have more than one xml element in the
> > soap:body ?
>
> Yes.  But - I was incorrect about the MUST above!  My hands were typing
> a little ahead of my brain there. :)  Multirefs are not in fact
> *required* by SOAP 1.1 section 5, but some implementations (Axis 1.X
> included) will by default serialize all complex objects as multirefs
> since it speeds writing (if you don't do it that way you have to walk
> the entire data graph to see what objects are referred to multiple times
> before serializing).
>
> > I have to think about bit. We can resolve the problem with parsing as I
> > have mentioned earlier but can not think about a way to serialize with
> > multirefs.
>
> Again, my bad - we're not forced to do so, so it's ok for us not to, as
> long as we accept that we're not going to be able to do real graphs.  If
> no one wants this particular functionality, I'm fine with punting on it.
>
> Your idea about parsing the XML to remove the hrefs and generate a
> larger "virtual" expanded document on the reading side should work fine,
> although it will potentially cause repeated data if a multiref is used
> many times.  Probably not a big deal.  I'll respond to the rest of your
> other note in another message.
>
> Thanks,
> --Glen
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>


-- 
Amila Suriarachchi,
WSO2 Inc.

Mime
View raw message