У меня есть обработчик сообщений, который получает из очереди JMS и отправляет результаты в другую очередь JMS. Обработчик сообщений находится в Spring DefaultMessageListenerContainer.
Когда контейнер закрывается, я хотел бы, чтобы он завершил обработку любых запросов, которые он уже использовал, и отправил результаты. В то же время он больше не должен получать новые сообщения из очереди запросов.
Прямо сейчас, без специальных положений о выключении, безопасных ApplicationContext.registerShutdownHook (), контейнер ожидает возврата любых ожидающих вызовов listernerMethod, но не отправляет результаты в очередь ответов.
Каков будет подходящий способ убедиться, что ответы, создаваемые запущенными обработчиками, отправляются в очередь ответов?