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

Reply via email to