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 2012/08/08 16:22:26 UTC

svn commit: r1370783 - in /camel/trunk/components/camel-cxf-transport/src: main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java

Author: ningjiang
Date: Wed Aug  8 14:22:25 2012
New Revision: 1370783

URL: http://svn.apache.org/viewvc?rev=1370783&view=rev
Log:
CAMEL-5405 keep on fixing the CXF Transport loses HTTP Matrix parameters

Modified:
    camel/trunk/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java
    camel/trunk/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java

Modified: camel/trunk/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java?rev=1370783&r1=1370782&r2=1370783&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java (original)
+++ camel/trunk/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/message/DefaultCxfMesssageMapper.java Wed Aug  8 14:22:25 2012
@@ -32,7 +32,9 @@ import org.slf4j.LoggerFactory;
  */
 public class DefaultCxfMesssageMapper implements CxfMessageMapper {
     private static final Logger LOG = LoggerFactory.getLogger(DefaultCxfMesssageMapper.class);
-
+    private static final String CXF_HTTP_REQUEST = "HTTP.REQUEST";
+    private static final String CXF_HTTP_RESPONSE = "HTTP.RESPONSE";
+    
     public Message createCxfMessageFromCamelExchange(Exchange camelExchange, 
             HeaderFilterStrategy headerFilterStrategy) {
         
@@ -63,6 +65,10 @@ public class DefaultCxfMesssageMapper im
         answer.put(org.apache.cxf.message.Message.ENCODING, enc);
         answer.put(org.apache.cxf.message.Message.QUERY_STRING, queryString);
         
+        Object request = camelMessage.getHeader(Exchange.HTTP_SERVLET_REQUEST);
+        answer.put(CXF_HTTP_REQUEST, request);
+        Object response = camelMessage.getHeader(Exchange.HTTP_SERVLET_RESPONSE);
+        answer.put(CXF_HTTP_RESPONSE, response);
         // TODO propagate security context
         
         LOG.trace("Processing {}, requestContentType = {}, acceptContentTypes = {}, encoding = {}, path = {}, basePath = {}, verb = {}",

Modified: camel/trunk/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java?rev=1370783&r1=1370782&r2=1370783&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java (original)
+++ camel/trunk/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/common/message/DefaultCxfMessageMapperTest.java Wed Aug  8 14:22:25 2012
@@ -77,6 +77,10 @@ public class DefaultCxfMessageMapperTest
         EasyMock.expectLastCall().andReturn("GET");
         camelMessage.getHeader(Exchange.HTTP_QUERY, String.class);
         EasyMock.expectLastCall().andReturn("");
+        camelMessage.getHeader(Exchange.HTTP_SERVLET_REQUEST);
+        EasyMock.expectLastCall().andReturn(null);
+        camelMessage.getHeader(Exchange.HTTP_SERVLET_RESPONSE);
+        EasyMock.expectLastCall().andReturn(null);
 
         camelMessage.getBody(InputStream.class);
         EasyMock.expectLastCall().andReturn(