如何暂时禁用消息监听器是一种好的方法?我想要解决的问题是:
- 通过消息监听器接收了一个JMS消息
- 在处理消息时出现错误
- 等待我的系统再次准备好来处理该消息
- 在我的系统准备好之前,不希望再有更多的消息,所以...
- ...我想要禁用消息监听器
- 我的系统又可以进行处理了
- 处理失败的消息,并确认JMS消息已被处理
- 启用消息监听器
目前,我正在使用 Sun 应用服务器。我通过将消息消费者设置为 null 来禁用消息监听器,并使用 setMessageListener(myOldMessageListener) 重新启用它,但此后我没有收到任何消息。