You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2013/04/12 17:46:07 UTC

svn commit: r1467319 - /camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java

Author: ningjiang
Date: Fri Apr 12 15:46:07 2013
New Revision: 1467319

URL: http://svn.apache.org/r1467319
Log:
CAMEL-6253 fix the test errors in camel-cxf

Modified:
    camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java

Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java?rev=1467319&r1=1467318&r2=1467319&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java Fri Apr 12 15:46:07 2013
@@ -139,6 +139,12 @@ public class DefaultCxfRsBinding impleme
                 continue;
             }
             
+            // we need to make sure the entry value is not null
+            if (entry.getValue() == null) {
+                LOG.trace("Drop Camel header: {}={}", entry.getKey(), entry.getValue());
+                continue;
+            }
+            
             String mappedHeaderName = camelToCxfHeaderMap.get(entry.getKey());
             if (mappedHeaderName == null) {
                 mappedHeaderName = entry.getKey();
@@ -251,7 +257,9 @@ public class DefaultCxfRsBinding impleme
     protected void copyProtocolHeader(org.apache.cxf.message.Message cxfMessage, Message camelMessage, Exchange camelExchange) {
         Map<String, List<String>> headers = (Map<String, List<String>>)cxfMessage.get(org.apache.cxf.message.Message.PROTOCOL_HEADERS);
         for (Map.Entry<String, List<String>>entry : headers.entrySet()) {
-            if (headerFilterStrategy.applyFilterToCamelHeaders(entry.getKey(), entry.getValue(), camelExchange)) {
+            // just make sure the first String element is not null
+            if (headerFilterStrategy.applyFilterToCamelHeaders(entry.getKey(), entry.getValue(), camelExchange) 
+                || entry.getValue().get(0) == null) {
                 LOG.trace("Drop CXF message protocol header: {}={}", entry.getKey(), entry.getValue());
             } else {
                 // just put the first String element, as the complex one is filtered