When there is a network problem which results in the client being disconnected from the JMS server, is there some other way to detect the problem other than waiting until the next JMS message being sent fails?
Asked
Active
Viewed 1,642 times
3 Answers
4
You can register an ExceptionListner
with the JMS Connection
using Connection.setExceptionListener(ExceptionListener)
The ExceptionListener
will get notified of more problems than an actual disconnection, so you may have to filter the JMSException
that gets passed to the listener.

skaffman
- 398,947
- 96
- 818
- 769
3
ExceptionListener isn't necessarily enough. You also need to catch exceptions on any JMS calls you make (sending messages, for example). See Reconnecting JMS listener to JBossMQ
0
if your are running on MQ and looking to solve this problem, install a local MQ instance. More license but you will get guaranty delivery if your main corporate MQ goes down.
Other Option, use Spring and let the framework do the recovery of the connection.

Aerosteak
- 987
- 1
- 11
- 21
-
2I am not sure adding a massive spring library is the best solution to handling reconnecting to a JMS queue. (: – corydoras Apr 30 '10 at 06:59