使用 Qpid JMS 客户端和 RabbitMQ 的持久订阅

Durable subscription with Qpid JMS client and RabbitMQ

我在使用 Qpid JMS 客户端创建对 RabbitMQ 主题的持久订阅时遇到问题。

我尝试了以下方法:

session.createDurableSubscriber( topic, "name" );

但是我收到一个 JMSAMQException 消息 "Queue bound query failed: Woken up due to class javax.jms.JMSException"

有人知道使用连接到 RabbitMQ 的 Qpid JMS 客户端设置持久订阅者的正确方法吗?

这看起来是 Qpid JMS 客户端错误。

createDurableSubscriber 路径正在使用 RabbitMQ 不支持的 AMQP 规范的 Qpid 特定扩展(特别是 exchange.bound)。为了实现互操作性,它应该以类似于 QPID-5224 的方式保护此类调用。

我建议在 Qpid 用户列表中报告此问题并提出 JIRA/submitting 补丁。