camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rxm0203 <>
Subject Dead Letter Error Handler and non blocking mode
Date Fri, 28 Jan 2011 18:43:06 GMT

I have following route with dead letter error handler attached to it.

<route errorHandlerRef="deadLetterErrorHandler">
	<from uri="activemq:queue:order.*" />
	<bean ref="OrderProcessor" method="process" />

My Dead Letter Error Handler definition is as follows. Please note that I
have 5 minutes delay between retries.
<!-- here we configure our DeadLetterChannel -->
	<bean id="deadLetterErrorHandler"
		<!-- exchanges is routed to activemq:queue:ActiveMQ.DLQ in case redelivery
failed -->
		<property name="deadLetterUri" value="activemq:queue:ActiveMQ.DLQ" />
		<!-- reference the redelivery policy to use -->
		<property name="redeliveryPolicy" ref="redeliveryPolicyConfig" />
		<!-- Camel will use original message when it moves message to the dead
letter channel -->
		<property name="useOriginalMessage" value="true" />

	<!-- here we set the redelivery settings -->
	<bean id="redeliveryPolicyConfig"
		<!-- try redelivery at most 6 times, after that the exchange is dead and 
			its routed to the activemq:queue:ActiveMQ.DLQ endpoint -->
		<property name="maximumRedeliveries" value="6" />
		<!-- delay 300000ms before redelivery -->
		<property name="redeliverDelay" value="300000" />

I have issue that when activemq.queue.order.user1 is in retry mode, Camel
doesn't process anything from activemq.queue.order.user2 queue. It waits for
retries to exhaust. Is there a configuration setting to change Camel's
blocking behavior so that when one queue is in retry mode it is still
processing messages from other queue?



View this message in context:
Sent from the Camel - Users mailing list archive at

View raw message