Author: hadrian Date: Fri Apr 8 01:08:39 2011 New Revision: 1090078 URL: http://svn.apache.org/viewvc?rev=1090078&view=rev Log: CAMEL-3792. Backport to camel-2.7.x
Added: camel/branches/camel-2.7.x/camel-core/src/test/java/org/apache/camel/processor/onexception/OnExceptionUseOriginalMessageTest.java - copied unchanged from r1083696, camel/trunk/camel-core/src/test/java/org/apache/camel/processor/onexception/OnExceptionUseOriginalMessageTest.java Modified: camel/branches/camel-2.7.x/ (props changed) camel/branches/camel-2.7.x/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java camel/branches/camel-2.7.x/components/camel-http/ (props changed) Propchange: camel/branches/camel-2.7.x/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Fri Apr 8 01:08:39 2011 @@ -1 +1 @@ -/camel/trunk:1087856,1088583,1088916-1088917,1089275 +/camel/trunk:1083696,1087856,1088583,1088916-1088917,1089275 Modified: camel/branches/camel-2.7.x/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.7.x/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java?rev=1090078&r1=1090077&r2=1090078&view=diff ============================================================================== --- camel/branches/camel-2.7.x/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java (original) +++ camel/branches/camel-2.7.x/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java Fri Apr 8 01:08:39 2011 @@ -591,18 +591,23 @@ public abstract class RedeliveryErrorHan // is the a failure processor to process the Exchange if (processor != null) { - // reset cached streams so they can be read again - MessageHelper.resetStreamCache(exchange.getIn()); - // prepare original IN body if it should be moved instead of current body if (data.useOriginalInMessage) { if (log.isTraceEnabled()) { log.trace("Using the original IN message instead of current"); } - Message original = exchange.getUnitOfWork().getOriginalInMessage(); exchange.setIn(original); + if (exchange.hasOut()) { + if (log.isTraceEnabled()) { + log.trace("Removing the out message to avoid some uncertain behavior"); + } + exchange.setOut(null); + } } + + // reset cached streams so they can be read again + MessageHelper.resetStreamCache(exchange.getIn()); if (log.isTraceEnabled()) { log.trace("Failure processor " + processor + " is processing Exchange: " + exchange); Propchange: camel/branches/camel-2.7.x/components/camel-http/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Fri Apr 8 01:08:39 2011 @@ -1 +1 @@ -/camel/trunk/components/camel-http:917526,1087856,1088583,1088916-1088917,1089275 +/camel/trunk/components/camel-http:917526,1083696,1087856,1088583,1088916-1088917,1089275