Я пишу клиент JMS, который использует из очереди. Мой брокер activemq, если это имеет значение.
Одно из требований - запуск клиента, даже если брокер не работает. В этом случае он должен вести себя так, как будто там, где в очереди нет сообщений, и как только брокер подключен и сообщения начинают поступать, они ведут себя соответствующим образом.
Проблема в том, что в моем коде:
connectionFactory = new ActiveMQConnectionFactory(url);
Connection connection = connectionFactory.createConnection();
connection.start()
Если брокер не работает, он застревает в connection.start()
. В то время как я хотел бы, чтобы connection.start()
молча возвращался и продолжал пытаться подключаться в фоновом режиме и принимать сообщения, пока он может, и молчать, когда нет.
Как мне этого добиться.