You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "David Atkins (JIRA)" <ji...@apache.org> on 2014/12/24 13:06:14 UTC
[jira] [Created] (CAMEL-8181) Default SOAPMessage to String
Converter does not handle Multiparts as expected
David Atkins created CAMEL-8181:
-----------------------------------
Summary: Default SOAPMessage to String Converter does not handle Multiparts as expected
Key: CAMEL-8181
URL: https://issues.apache.org/jira/browse/CAMEL-8181
Project: Camel
Issue Type: Bug
Components: camel-cxf
Affects Versions: 2.14.1
Reporter: David Atkins
Priority: Minor
The default SOAPMessage to String converter in org.apache.camel.component.cxf.converter.CxfConverter uses the SoapMessage#writeTo method to convert it to a String. But when receiving a multipart (e.g. when using MTOM) this provides all of the message parts, instead of just the message body as expected, looking something like this:
{code}
------=_Part_0_715152323.1390739632718
Content-Type: text/xml; charset=utf-8
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rep="http://reportincident.example.camel.apache.org">
<soapenv:Header>
</soapenv:Header>
<soapenv:Body>
<rep:inputReportIncident>
<incidentId>?</incidentId>
<incidentDate>?</incidentDate>
<givenName>?</givenName>
<familyName>?</familyName>
<summary>?</summary>
<details>?</details>
<email>?</email>
<phone>?</phone>
</rep:inputReportIncident>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_0_715152323.1390739632718
Content-Type: application/octet-stream; name=error.log
Content-Disposition: attachment; name="error.log"; filename="error.log"
Content-Transfer-Encoding: binary
Content-ID: <error.log>
file content here
{code}
I believe the converter should only convert the initial Part to a String, rather than the whole message. Something like this:
{code}
return XMLUtils.toString(new DOMSource(message.getSOAPPart()));
{code}
I'll look at creating a unit test/patch to resolve
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)