JMS и ActiveMQ, как получить уведомление об отключении? - PullRequest
1 голос
/ 05 июля 2011

Я использую JMS для общения с ActiveMQ. Мне пришлось отключить отработку отказа для ActiveMQ, потому что мне нужно обрабатывать его самостоятельно.

Поэтому вместо использования: failover // tcp // localhost: 61616 я использовал: tcp // localhost: 61616.

если я закрою сервер ActiveMQ и попытаюсь отправить сообщение, я получу исключение. javax.jms.IllegalStateException: сессия закрыта

но Как я могу получить уведомление, когда соединение с сервером потеряно как можно скорее?

Причина в том, что я не использую аварийное переключение ActiveMQ, потому что в производстве это должен быть MQSeries.

спасибо

1 Ответ

2 голосов
/ 05 июля 2011

Я не уверен, но TransportListener может вам помочь.

Вот пример использования,

connection = new ActiveMQConnectionFactory(brokerUrl).createConnection();
ActiveMQConnection cc = (ActiveMQConnection)connection;
cc.addTransportListener(new YourTransportListener());  

Надеюсь, это поможет вам.

...