Я использую версию весной загрузки 1.3.2. Я использую @JmsListener для использования сообщения от activemq для сообщения, которое я создал/создал с помощью JmsTemplate. Вот код:Как приостановить и начать использовать сообщение с помощью @JmsListener
@JmsListener(destination = "myqueue")
public void consumeMsg(Object requestBody)
try {
javaMailSender.send(requestBody);
} catch (MailException ex) {
LOG.error(ex.getLocalizedMessage(), ex);
if(ex.getMessage().contains(SMTP_CONNECTION_FAILURE) && activeMqMsg.getIntProperty("RETRYCOUNT") == 1) {
producer.send("myqueue",requestBody)
}
else {
producer.send("manualqueue",requestBody)
}
}
}
теперь, когда есть ошибка Сбой подключения из SMTP, я хочу, чтобы приостановить @JmsListener на некоторое время и снова начать потреблять сообщение. Я не видел лучшего примера для этого варианта использования, используя @JmsListener. Поскольку я использую весеннюю загрузку, я добавил параметры подключения activemq в свойствах приложения, мне не нужно писать какой-либо код для создания фабрики соединений, установки очереди ... и т. Д. Вы можете помочь, как это сделать?
вот что вам нужно: http://stackoverflow.com/questions/32588352/how-can-i-stop-start-pause-a-jmslistener-the-clean-way/33214651#33214651 – Seb