Hi Hadrian, I will add a test after the 2.6.0 release. I had to rush a bit to get this into the release as hadrian had already started. I currently run a fulltest on hudson. Till now we have no regressions. My test would not help with regressions right now as I can only test my case.
Christian -----Ursprüngliche Nachricht----- Von: Claus Ibsen [mailto:claus.ib...@gmail.com] Gesendet: Montag, 24. Januar 2011 15:01 An: dev@camel.apache.org Cc: comm...@camel.apache.org Betreff: Re: svn commit: r1062776 - in /camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf: transport/CamelDestination.java util/CxfHeaderHelper.java Hi Christian Please try always to add unit test when you commit a change in any of the components. Its really important that we improve testing coverage. This is not a trivial change and it could potential affect something. On Mon, Jan 24, 2011 at 2:55 PM, <cschnei...@apache.org> wrote: > Author: cschneider > Date: Mon Jan 24 13:55:22 2011 > New Revision: 1062776 > > URL: http://svn.apache.org/viewvc?rev=1062776&view=rev > Log: > CAMEL-3581 Forward http response code from CXF to Camel > > Modified: > > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/transport/CamelDestination.java > > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/util/CxfHeaderHelper.java > > Modified: > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/transport/CamelDestination.java > URL: > http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main > /java/org/apache/camel/component/cxf/transport/CamelDestination.java?r > ev=1062776&r1=1062775&r2=1062776&view=diff > ====================================================================== > ======== > --- > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/transport/CamelDestination.java (original) > +++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/co > +++ mponent/cxf/transport/CamelDestination.java Mon Jan 24 13:55:22 > +++ 2011 > @@ -51,6 +51,8 @@ import org.apache.cxf.wsdl.EndpointRefer > > /** > * @version $Revision$ > + * > + * Forwards messages from Camel to CXF and the CXF response back to > + Camel > */ > public class CamelDestination extends AbstractDestination implements > Configurable { > protected static final String BASE_BEAN_NAME_SUFFIX = > ".camel-destination"; @@ -243,6 +245,9 @@ public class > CamelDestination extends Ab > > camelExchange.getOut().getHeaders(), camelExchange); > } > > + /** > + * Receives a response from CXF and forwards it to the camel > + route the request came in from > + */ > private class CamelOutputStream extends CachedOutputStream { > private Message outMessage; > > > Modified: > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/util/CxfHeaderHelper.java > URL: > http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main > /java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java?rev=106 > 2776&r1=1062775&r2=1062776&view=diff > ====================================================================== > ======== > --- > camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/compon > ent/cxf/util/CxfHeaderHelper.java (original) > +++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/co > +++ mponent/cxf/util/CxfHeaderHelper.java Mon Jan 24 13:55:22 2011 > @@ -85,9 +85,9 @@ public final class CxfHeaderHelper { > return; > } > > + // 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)) { @@ -116,6 +116,13 @@ public final class > CxfHeaderHelper { > if (value != null && > !strategy.applyFilterToExternalHeaders(key, value, exchange)) { > headers.put(key, value); > } > + > + // propagate response code > + key = Message.RESPONSE_CODE; > + value = message.get(key); > + if (value != null && > + !strategy.applyFilterToExternalHeaders(key, value, exchange)) { > + headers.put(Exchange.HTTP_RESPONSE_CODE, value); > + } > } > > } > > > -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/