У меня есть приложение Spring Boot , развернутое в WebLogi c Сервер как WAR . Приведенный ниже метод не заполняет ActiveMQ.DLQ , когда операция над сообщением завершается неудачно и сообщение помечается как отложенное. Мое требование состоит в том, чтобы положить sh в ActiveMQ.DLQ , если обработка данных не удалась по какой-либо причине. Тот же код прекрасно работает в автономном приложении Spring Boot Embedded tomcat при сбое любой операции.
`
@JmsListener (destination= "MyMessageQueue")
public void consumeMessage(Message message) throws JMSException {
try {
// some operations with message data
} (CustomException e) {
// If failed push back to ActiveMQ.DLQ to retry after sometime
throw new JMSException("CustomException: " + e.getMessage());
} (Exception e) {
// If failed push back to ActiveMQ.DLQ to retry after sometime
throw new JMSException("Exception: " + e.getMessage());
}
}
`