【发布时间】:2015-01-24 23:58:37
【问题描述】:
有没有办法使用RabbitTemplate 中的sendAndRecieve() 方法并使用非默认交换。我知道我可以使用setReplyQueue() 方法,但这仅限于默认交换。
目前我解决此问题的唯一方法是在构建消息时手动传递reply-to,然后同步发送并随后接收。
提前致谢,希望这只是我的疏忽。
【问题讨论】:
标签: spring rabbitmq rpc amqp spring-amqp
有没有办法使用RabbitTemplate 中的sendAndRecieve() 方法并使用非默认交换。我知道我可以使用setReplyQueue() 方法,但这仅限于默认交换。
目前我解决此问题的唯一方法是在构建消息时手动传递reply-to,然后同步发送并随后接收。
提前致谢,希望这只是我的疏忽。
【问题讨论】:
标签: spring rabbitmq rpc amqp spring-amqp
侦听器支持replyTo 形式为exchange/routingKey - 请参阅the documentation。
但是,rabbit Template 不支持将其设置为发送和接收操作,它使用默认的交换和队列名称作为 rk 设置回复路由。
不幸的是,我没有看到一个简单的解决方法。
编辑:删除了我建议的解决方法 - 因为该方法引用了私有字段,所以它不起作用。
EDIT2:我通过使用 Java 而不是 XML 配置模板找到了另一种解决方法...
https://github.com/garyrussell/spring-amqp/commit/47d8238fd8651ed3a04eab7c91fae632c7f3155c
【讨论】: