Author: ningjiang
Date: Wed Dec 15 08:11:06 2010
New Revision: 1049450

URL: http://svn.apache.org/viewvc?rev=1049450&view=rev
Log:
CAMEL-3431 Set the exception into the message body incase the exception of 
exchange is not copied through the NMR

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

Modified: 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfClientCallback.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfClientCallback.java?rev=1049450&r1=1049449&r2=1049450&view=diff
==============================================================================
--- 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfClientCallback.java
 (original)
+++ 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfClientCallback.java
 Wed Dec 15 08:11:06 2010
@@ -58,7 +58,7 @@ public class CxfClientCallback extends C
                         ctx);
             }
             if (LOG.isDebugEnabled()) {
-                LOG.debug(Thread.currentThread().getName() + "calling 
handleResponse");
+                LOG.debug(Thread.currentThread().getName() + " calling 
handleResponse");
             }
             camelAsyncCallback.done(false);
         }
@@ -73,11 +73,12 @@ public class CxfClientCallback extends C
             if (!boi.getOperationInfo().isOneWay()) {
                 // copy the InMessage header to OutMessage header
                 
camelExchange.getOut().getHeaders().putAll(camelExchange.getIn().getHeaders());
-                
endpoint.getCxfBinding().populateExchangeFromCxfResponse(camelExchange, 
cxfExchange,
-                        ctx);
+                // set the camelExchange outbody with the exception
+                camelExchange.getOut().setFault(true);
+                camelExchange.getOut().setBody(ex);
             }
             if (LOG.isDebugEnabled()) {
-                LOG.debug(Thread.currentThread().getName() + "calling 
handleException");
+                LOG.debug(Thread.currentThread().getName() + " calling 
handleException");
             }
             camelAsyncCallback.done(false);
         }


Reply via email to