[ 
https://issues.apache.org/activemq/browse/CAMEL-860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen resolved CAMEL-860.
-------------------------------

    Resolution: Fixed

See CAMEL-870 about the use of jms for DLC queues.

> DeadLetterChannel does not set the EXCEPTION_CAUSE_PROPERTY
> -----------------------------------------------------------
>
>                 Key: CAMEL-860
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-860
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 1.4.0
>         Environment: Windows XP,  JDK 6
>            Reporter: dario sanna
>            Assignee: Claus Ibsen
>             Fix For: 1.5.0
>
>   Original Estimate: 5 minutes
>  Remaining Estimate: 5 minutes
>
> The DeadLetterChannel does not set the EXCEPTION_CAUSE_PROPERTY.
> It looks like a bug in the method:
> public boolean process(final Exchange exchange, final AsyncCallback callback, 
> final RedeliveryData data) 
> The property is set by getting the Exception from the exchange:
> exchange.setProperty(EXCEPTION_CAUSE_PROPERTY, exchange.getException());
> but several lines before the Exception ist set to null in exchange:
> if (exchange.getException() != null) {
>                 Throwable e = exchange.getException();
>                 exchange.setException(null); // Reset it since we are 
> handling it.
> to fix the bug, i think it is simply done by preserving the Throwable like 
> this
> Throwable e = exchange.getException();
> if (exchange.getException() != null) {
>                 exchange.setException(null); // Reset it since we are 
> handling it.
> ...
> exchange.setProperty(EXCEPTION_CAUSE_PROPERTY, e);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to