【发布时间】:2020-07-06 22:31:11
【问题描述】:
我正在尝试从共享死信队列中使用,并且只想使用由我的应用程序创建的消息。我正在尝试在 originalDestination 属性上的消费者上添加一个选择器,但它不起作用。我有什么遗漏吗?
@JmsListener(destination = "${dlq}", selector = "originalDestination = 'Consumer.original.VirtualTopic.original'")
public void onMessageReceived(Message message) {
log.info(message.getOriginalDestination().toString());
log.info(message.toString());
}
【问题讨论】:
-
正如 Tim 在他的回答中指出的那样,这在 ActiveMQ 5.x 中是不可能的。但是,如果您使用的是 ActiveMQ Artemis,则可以在代理向死信地址发送消息时添加的
_AMQ_ORIG_ADDRESS或_AMQ_ORIG_QUEUE消息属性上使用选择器。
标签: java spring spring-boot jms activemq