Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-27 Thread Claus Ibsen
Hi We also discussed Camel and transactions within Red Hat with some customers recently. And Duane Hawkins wrote this nice piece of response which I am allow to share here in the public with his permissions There are a couple of possible gotchas here: 1. It is important to note that Camel

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread sujin sr
Hi, I have tried with OnException and doTry/doCatch error handler still I am getting the same behaviour as message sends to JMS_ONE. error handler java.lang.RuntimeException java.lang.IllegalArgumentException true

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread Claus Ibsen
Hi You are using dead letter channel as Camel's error handler which will mark the message as succesfull. Just use a regular error handler On Wed, Jun 26, 2019 at 9:50 AM sujin sr wrote: > > Thanks for the Response. > > Before implementing 'transacted JMS acknowledge' i have tried to create >

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread sujin sr
Thanks for the Response. Before implementing 'transacted JMS acknowledge' i have tried to create separate JMS component for ERROR. But still, I see the same behaviour as message sent to the JMS_ONE not rollbacked I have added this beans and changed ERROR route like below

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread Claus Ibsen
On Wed, Jun 26, 2019 at 9:19 AM Zheng Feng wrote: > > It looks like you need the JTA transaction manager to handle a XA > transaction between the JMS_ONE and JMS_TWO. > That is only needed if ONE and TWO are 2 different JMS systems. If they are the same then local JMS transacted ack mode should

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread Claus Ibsen
Hi Its likely better to use just the brokers error handling with transaction (transacted JMS acknowledge). Then you can configure the broker with redelivery and its dead letter queue. Then you dont need any Camel error handler, and only need to setup JMS component for transacted JMS ack mode.

Re: JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread Zheng Feng
It looks like you need the JTA transaction manager to handle a XA transaction between the JMS_ONE and JMS_TWO. On Wed, Jun 26, 2019 at 3:01 PM sujin sr wrote: > I am facing a issue while trying to implement JMS transaction using Camel. > > Here is the scenario > > 1. Primary route which read

JMS Transaction rollback with dead letter channel using Apache Camel

2019-06-26 Thread sujin sr
I am facing a issue while trying to implement JMS transaction using Camel. Here is the scenario 1. Primary route which read the message from the queue(JMS_IN), pass the same exchange to the two sub route(direct route) 2. First sub route process the message successfully and send to the another