This forum is now a read-only archive. All commenting, posting, registration services have been turned off. Those needing community support and/or wanting to ask questions should refer to the Tag/Forum map, and to http://spring.io/questions for a curated list of stackoverflow tags that Pivotal engineers, and the community, monitor.

Intercept DMLC to trap exceptions

Nov 10th, 2008, 10:07 AM

I have a requirement to intercept the exceptions thrown by DefaultMessageListenerContainer. The requirement is to know if any transaction is rolled back and appropriately set the delay in reading the next message from the queue.
Also, let me know if there is any alternative to set the delay in reading messages once an unknown exception happens.

Message redelivery delay is usually a setting you have to apply to the message provider. You may be able to influence this by setting a special jms header that the provider is aware of. You'd have to check with the documentation for your JMS provider.

Comment

Thanks for looking into my problem. I don't have control on the settings that can be made on the JMS provider. Hence finding out an alternate solution which I can handle in my code.
I have changed task executor to use TimerTaskExecutor in order to handle delay in case of exceptions. My code works fine if any exception is thrown by listener. But fails for exceptions thrown by container.
How can I handle such exceptions?