【问题标题】:How to unacknowledge a message and send it back to the queue in ActiveMQ?如何取消确认消息并将其发送回 ActiveMQ 中的队列?
【发布时间】:2021-02-17 14:26:54
【问题描述】:

使用 ActiveMQ 读取/使用队列中的消息后,我想将相同的消息重新传递回队列,因为我想停止处理一段时间。如何实现?

【问题讨论】:

    标签: activemq message consuming


    【解决方案1】:

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

    如果您使用的是事务型 JMS 会话,您只需在会话中调用 rollback()

    【讨论】:

    • 我正在使用 DefaultMessageListenerContainer。 DefaultMessageListenerContainer 容器 = 新的 DefaultMessageListenerContainer(); container.setSessionTransacted(true);我怎么能在这里调用回滚?你能帮忙吗?
    • 如何使用 Spring JMS API 回滚事务与您最初提出的问题确实是一个不同的问题。我建议您就此提出一个 问题,如果我的回答解决了您原来的问题,请将其标记为正确,以帮助将来可能有同样问题的其他用户。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2013-08-01
    • 2021-11-25
    • 2020-03-14
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 2017-09-13
    • 2012-05-10
    相关资源
    最近更新 更多