Hello. I'm not sure if I'm sending my question to the right channel since my problem could come from distinct origins...
I have bundles running in Karaf 4.4.4, using Camel 3.22.and ActiveMQ 5.18.3 (running on its own, not in Karaf). The broker is configured to move rollbacked messages to DLQs. *<policyEntry queue=">" producerFlowControl="true" memoryLimit="256m" queuePrefetch="1" lazyDispatch="true"> <deadLetterStrategy> <individualDeadLetterStrategy queuePrefix="DLQ." useQueueForQueueMessages="true"/> </deadLetterStrategy></policyEntry>* This works as expected for Java applications that create an ActiveMQ Connection Factory with a RedeliveryPolicy setting "redeliveryPolicy.setMaximumRedeliveries(0)" : on any exception, messages from any queue are moved to the matching DLQ. Now I need to manage exceptions in our bundles, such a way that errors also lead messages to be moved to DLQ (it's a new requirement). The connection factory is managed by PAX JMS with a CFG file where I've just added a property to avoid redelivery, and force a rollback on the first error. *# Connection configurationtype=activemqconnectionFactoryType=ConnectionFactory# Namesname=xyz-jmsosgi.jndi.service.name <http://osgi.jndi.service.name>=jms/xyz# Connection factory propertiesjms.url=tcp://localhost:6000jms.user=xyzjms.password=xyzjms.clientIDPrefix=XYZjms.redeliveryPolicy.maximumRedeliveries=0# Set XA transactionxa=false# Connection poolingpool=pooledjms# Maximum number of connections for each user+password (default 1)pool.maxConnections=256* The maximumRedeliveries seems to be applied : if I set it with 3, the message is processed 3 times, and with 0, only one time. But exceptions do not move messages to the DLQ. The camel route gets messages using a transacted mode : *<from uri="jms:queue1?connectionFactory=#xyzJMS&transacted=true" />* Did I miss something ??? Thanks for your help. Regards.