I am not able to understand the below point on JMS AutoAck website:
The below behaviour is followed in AUTO_ACKNOWLEDGE
Right after the onMessage method returns successfully after invoking the consumer's MessageListener (which might still in progress as per my understanding)
but as per my understanding, the Consumer implements MessageListener and does all the processing in the onMessage() method (which is implemented by Consumer)
One more question: I am not able to understand the diff between AUTO_ACKNOWLEDGE and DUPS_OK_ACKNOWLEDGE.
What I read is : DUPS_OK_ACKNOWLEDGE acknowledges lazily and might deliver the same message again, but not able to understand its practical implications.
Please help me with a practical example where AUTO_ACKNOWLEDGE is required and where DUPS_OK_ACKNOWLEDGE required
Added 5th Sep13 :Adding a point from Java Redeliver and transaction
Consider a failure occurring during message processing. What happens to the message? Will the message be lost or redelivered for successful processing later? The answers to these questions depend upon the transaction options you choose.