如何取消确认消息并将其发送回ActiveMQ中的队列?

问题描述

一旦从队列中读取/使用一条消息,就使用ActiveMQ,我想将同一条消息重新传递回队列,因为我想暂时停止处理。如何实现?

解决方法

要取消未确认的消息返回队列,您只需关闭JMS使用方即可。如果您在JMS会话上使用AUTO_ACKNOWLEDGE模式,则您将无法取消返回到队列的消息,因为它们将被自动确认。

如果您正在使用事务处理的JMS会话,则只需在该会话上调用rollback()