Camel-cxf does not properly populate MessageContentList for PAYLOAD mode ------------------------------------------------------------------------
Key: CAMEL-2802 URL: https://issues.apache.org/activemq/browse/CAMEL-2802 Project: Apache Camel Issue Type: Bug Components: camel-cxf Reporter: William Tam Assignee: William Tam Fix For: 2.4.0 Currently, CxfEndpoint.CamelCxfClientImpl does not leave place holder for SOAP header in MessageContentList. It could be a problem when CXF tries to retrieve the values in the MessageContentList. Without the placeholder in place, SOAP body part can be mistakenly retrieved as SOAP header. This patch should fix the problem. Note: The fix depends on CXF-2837 (Add null pointer check in SoapOutInterceptor) which will be delivered in CXF 2.2.10. Index: src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java =================================================================== --- src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java (revision 43) +++ src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java (working copy) @@ -513,8 +513,9 @@ MessageContentsList content = new MessageContentsList(); int i = 0; - for (MessagePartInfo partInfo : boi.getOperationInfo().getInput().getMessageParts()) { - if (elements.size() > i) { + for (MessagePartInfo partInfo : boi.getOperationInfo().getInput().getMessageParts()) { + if (elements.size() > i && partInfo.getConcreteName().getLocalPart() + .equals(elements.get(i).getLocalName())) { content.put(partInfo, elements.get(i++)); } } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.