Вот код, который работал для меня:

я есть следующая конфигурация для моего MQueue:

<jms:listener-container container-type="default" connection-factory="cachedConnectionFactory" acknowledge="auto">
    <jms:listener id="myListenerId" destination="myDestination" ref="myListener" method="onMessage" />
</jms:listener-container>

Когда я пытаюсь остановить прием сообщений JMS, я пишу следующий код

jmsManagement = myProject.instance.getContext().getBean('myListenerId',Lifecycle.class);
jmsManagement.stop();

PS:

Когда яstop() мой слушательisRunning() вернуть False, но я все еще получаю сообщения через MQueue ...onMessage срабатывает.jmsManagement это экземпляр классаLifecycle, Даже когда я изменил его наDefaultMessageListenerContainer, то же самое.Я получаю сообщения перед звонкомstart(), даже когдаautoStartup установлено в false.jmsManagement.shutdown(); не остановил слушателя от срабатывания.

У кого-нибудь есть идеи о том, как остановить этот слушатель MQ? Я что-то упускаю?

Ответы на вопрос(1)

Ваш ответ на вопрос