We have a header entry that has multiple entries that are in the response HTTP message. These multiple entries are available in CXF, as each header value is represented as a list. However, when this message is propagated back to camel, only the first entry of this list is read into the camel message's headers.
Looking at the current camel-cxf code in trunk as shown below, I don't see an available option to propagate multiple entries back into the camel's message header. // Copy the CXF protocol headers to the camel headers Map<String, List<String>> cxfHeaders = CastUtils.cast((Map<?, ?>)message.get(Message.PROTOCOL_HEADERS)); if (cxfHeaders != null) { for (Map.Entry<String, List<String>> entry : cxfHeaders.entrySet()) { if (!strategy.applyFilterToExternalHeaders(entry.getKey(), entry.getValue(), exchange)) { headers.put(entry.getKey(), entry.getValue().get(0)); } } } Is this assumption correct and if so, has there been some work on how to get the multiple entries propagate back to camel? I can think of several strategy/options to not to break the existing applications and I was wondering if we can add such an option. I appreciate for your advice. regards, aki.