can you do that again and include TRACE level logging. not sure what is going on, but the poisonAck (ackType=1), that is carries the reason string is being ignored, and it the message is going to the dlq for some other reason.
note the last line of your log: 2011-05-04 20:31:17,268 | WARN | ignoring ack MessageAck {commandId = 18, responseRequired = false, ackType = 1, consumerId = ID:Jaskaran-3723-1304520542836-0:1:2:1, firstMessageId = ID:Jaskaran-3723-1304520542836-0:4:1:1:1, lastMessageId = ID:Jaskaran-3723-1304520542836-0:4:1:1:1, destination = queue://Test, transactionId = null, messageCount = 1, poisonCause = null}, for already expired message: Message ID:Jaskaran-3723-1304520542836-0:4:1:1:1 dropped=false acked=false locked=true | org.apache.activemq.broker.region.QueueSubscription | ActiveMQ Transport: tcp:///127.0.0.1:3724 On 4 May 2011 16:24, karen <jaskaran1...@gmail.com> wrote: > Hi Gary > > Thanks alot for replying. > I am using the tcp protocol with the following broker url:- > tcp://localhost:61616 > My application is using the Spring Framework. And i am using the > DefaultMessageListenerContainer for the listeners. > > I have attached a log file that captures the following use case:- > 1) A message is sent to the Test Queue > 2) This message is received by the listerner. This Listener throws a runtime > exception with a simple text string: > throw new RuntimeException("Pls work " + " force a redelivery"); > 3) The message is automatically sent to a DLQ called Failed.Test > > I noticed that the poisonCause is null in the file. > > Please help. > > http://activemq.2283324.n4.nabble.com/file/n3495917/activemq.log > activemq.log > > -- > View this message in context: > http://activemq.2283324.n4.nabble.com/ActiveMQ-5-5-Not-able-to-get-the-DLQ-DELIVERY-FAILURE-CAUSE-PROPERTY-value-tp3492931p3495917.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > -- http://blog.garytully.com http://fusesource.com