Hi,

Accessing the SOAP headers via the Camel header
"org.apache.cxf.headers.Header.list" after a CXF consumer works fine,
also for the CXF data format "PAYLOAD".

However, currently the setting of SOAP headers via the Camel header
"org.apache.cxf.headers.Header.list" is not working for a CXF producer
with  CXF data  format "PAYLOAD".

I found out that the list value contained in Camel header
"org.apache.cxf.headers.Header.list"  is correctly forwarded to the
CXF request, however in the CxfEndpoint.CamelCxfClientImpl this list
is overwritten by the value CxfPaylaod.getHeaders().

Therefore I propose  to merge the values from the Camel header
"org.apache.cxf.headers.Header.list" with the values of
CxfPaylaod.getHeaders(). This has the advantage that you can set the
headers either via the CxfPayload or by the Camel header
"org.apache.cxf.headers.Header.list".

For more details have a look at https://issues.apache.org/jira/browse/CAMEL-8978

Can somebody of the CXF experts comment whether my solution is
feasible. Then I will commit the patch.

Best Regards

Franz Forsthofer

Reply via email to