axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matthew Davis <gazat...@gmail.com>
Subject Re: Line breaks in SOAP response when recombining MTOM+XOP
Date Wed, 01 Apr 2009 23:28:27 GMT
Andreas,

Thanks for your response.  I get your point.  Will just write a workaround.

Thanks again






On Wed, Apr 1, 2009 at 3:51 PM, Andreas Veithen
<andreas.veithen@gmail.com>wrote:

> Whitespace is never ignored by the parser:
>
> "An XML processor must always pass all characters in a document that
> are not markup through to the application. A validating XML processor
> must also inform the application which of these characters constitute
> white space appearing in element content."
>
> Andreas
>
> On Thu, Apr 2, 2009 at 00:15, Matthew Davis <gazateer@gmail.com> wrote:
> > Andreas,
> >
> > Thank you for the quick reply.
> >
> > It's actually point 5 of section 3.1 that motivated my original email.
> It
> > seems to indicate that <xop:Include> is a serialized element in the XML
> > Infoset, not text under the <ns:Document> element (thus white spaces
> between
> > <ns:Document> and <xop:Include> should be ignored by the parser).  I
> agree
> > the base64binary form should contain no preceding or trailing white
> spaces
> > on the <ns:Document> text.
> >
> > If the SOAP response contains this:
> >
> > <Document><Include xmlns="http://www.w3.org/2004/08/xop/include"
> > href="cid:urn:uuid:56443C4239C2E4EC851238526572016"/></Document>
> >
> > Then I only see one child under <ns:Document> and the serialized form is
> > correct.
> >
> >
> > Unfortunately this isn't my service, I'm just a consumer of it.
> >
> >
> > Thanks,
> > -Matt
> >
> >
> > On Wed, Apr 1, 2009 at 2:54 PM, Andreas Veithen <
> andreas.veithen@gmail.com>
> > wrote:
> >>
> >> Matt,
> >>
> >> If my interpretation of the specs [1] is correct, then your service
> >> doesn't return a valid XOP package (see points 3 and 4 in section
> >> 3.1).
> >>
> >> Andreas
> >>
> >> [1] http://www.w3.org/TR/xop10/
> >>
> >> On Wed, Apr 1, 2009 at 23:32, Matthew Davis <gazateer@gmail.com> wrote:
> >> > Hi,
> >> >
> >> > I've run into an interesting problem with MTOM response handling. Not
> >> > sure
> >> > if this is a bug or intended functionality to keep schema compliance
> >> > (not an
> >> > expert in MTOM+XOP).  Currently using Axis2 v1.4.1 and Axiom v1.2.7.
> >> >
> >> > The service I'm calling is returning responses as SOAP/MTOM+XOP, but
> the
> >> > SOAP is pretty-printed (kind of, mainly line breaks between elements).
> >> > The
> >> > problem I'm running into is with the recombination of the XOP parts
> into
> >> > the
> >> > XML (base64binary fields).  The MTOM builder keeps the line breaks
> >> > between
> >> > <Document> and <Include> intact after building, even though
it seems
> to
> >> > be a
> >> > proper XML element hierarchy.  See the following snippet from the SOAP
> >> > payload:
> >> >
> >> > <Document>
> >> > <Include xmlns="http://www.w3.org/2004/08/xop/include"
> >> > href="cid:urn:uuid:
> >> > 56443C4239C2E4EC851238526572016"/>
> >> > </Document>
> >> >
> >> > It finds the attachment(s) without problem.  But, when I call
> >> > getChildren()
> >> > on the <Document> element, I get three OMText nodes:
> >> >
> >> > 1)  OMText:  "\n"
> >> > 2)  OMText:  The optimized node containing the binary data and
> >> > Datahandler
> >> > 3)  OMText:  "\n"
> >> >
> >> > and when I call serialize and print, the line breaks remain:
> >> >
> >> > <Document>
> >> > [base64-encoded text]
> >> > </Document>
> >> >
> >> > Please let me know if this should be directed to the AXIOM folks
> >> > instead.
> >> >
> >> > Thanks,
> >> > -Matt
> >
> >
>

Mime
View raw message