Hello.
It seems that the JMS consumer ignores the redelivery conditions that
I set on my route :
<route id=" fifi1-jms">
<from
uri="jms:fifi1?connectionFactory=#aliceJMS&transacted=true" />
<transacted />
<onException>
<exception>java.lang.Exception</exception>
<redeliveryPolicy disableRedelivery="true" />
<rollback markRollbackOnly="true" />
</onException>
<convertBodyTo type="String" />
<choice>
<when>
<simple>${body} == 'BAD'</simple>
<log message="It's bad !" />
<transform>
<groovy>0 / 0</groovy>
</transform>
</when>
</choice>
<log message="Message has been processed : ${body}" />
</route>
In fact, the message is not rolled back but delivered 7 times. I'd
like the rollback put the message to a DLQ queue at the first
execution.
I've tried with/without "transacted" option or/and statement, and
with/without "rollback" but it doesn't change anything...
I also switched between "disableRedelivery" and "maximumRedeliveries"
: no difference.
I've probably misunderstood how it works :( !
Any experts for help ?
Thanks in advance.
Regards.