that property is only set in the ActiveMQMessageConsumer, when onMessage throws an exception. The value is then set as the poisonCause of a message ack. In camel, the broker dlq processing is bypassed b/c the exceptions are trapped by spring. peek at https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java#L1397 to get some insight into how it works in vanila activemq, ie: wher md.getRollbackCause is used. Maybe a custom exception handler in camel can do something similar.
On 14 October 2014 18:01, rhuiser <robinhui...@gmail.com> wrote: > Hi, > > Does anyone has seen the message property > DLQ_DELIVERY_FAILURE_CAUSE_PROPERTY set on the message moved to the DLQ > when > using Camel in combination with a transacted? > > So far, I have not... > > I created some simple routes (one with Spring transaction manager, one with > ActiveMQ component), both with transaction enabled, no (specific) exception > handler in route: > > [timer] --> [setBody: ${property.CamelTimerCounter}] --> [queue_in] > > [queue_in] --> [processor: (if ${property.CamelTimerCounter} == 2, throw > Exception)] --> [queue_out] > > Route works as expected, message is indeed rolled to DLQ after retries, but > the option "DLQ_DELIVERY_FAILURE_CAUSE_PROPERTY" was never set.... > > Any hints? > > Thanks -- Robin > > > > > -- > View this message in context: > http://activemq.2283324.n4.nabble.com/Camel-transacted-message-rolled-to-DLQ-no-DLQ-DELIVERY-FAILURE-CAUSE-PROPERTY-property-set-tp4686389.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. >