Я работаю над кодом, в котором есть 3 подписчика (непостоянных) на тему в activemq, но происходит что-то не так, и один подписчик отключается от темы и больше никогда не подключается, даже если используемый протокол является отказоустойчивым. Итак, как я могу проверить статус подписчика, и если он не подписан, то подключить его обратно.
проверить, подписан ли подписчик activemq на тему или нет?
Ответы (1)
Я думаю, вам следует попытаться подключить ExceptionListener к вашему JMS-соединению - он должен показать вам, как только подписчик по какой-то причине отключится.
person
scir
schedule
30.04.2015
под exceptionListener вы имеете в виду подключение TransportListener?
- person Abhishek; 30.04.2015
Я предположил, что вы используете JMS - это правильно? Если да, взгляните на следующий код:
// KEY - register for exception callbacks
connection.setExceptionListener(new ExceptionListenerImpl());
в Прослушиватель исключений Пример
- person scir; 30.04.2015
да, я использую только jms. Я попробую добавить ExceptionListener.
- person Abhishek; 03.05.2015
Я обнаружил, что клиент использует отказоустойчивый протокол, но также не подключается повторно. Более того, ExceptionListener никогда не вызывается с отказоустойчивым протоколом.
- person Abhishek; 04.05.2015
Да я вижу. Изучили ли вы следующий вопрос: stackoverflow.com/questions/ 14172547/
- person scir; 05.05.2015
я попытался добавить exceptionListener, он работал нормально, но затем я попробовал его с отработкой отказа, и он работал нормально. На самом деле была некоторая проблема с кодом, поэтому теперь он отлично работает в обоих направлениях. Спасибо @scir.
- person Abhishek; 05.05.2015