gpt4 book ai didi

java - Spring集成动态消息选择器

转载 作者:太空宇宙 更新时间:2023-11-04 13:17:13 24 4
gpt4 key购买 nike

我有一个带有两个队列的应用程序,第一个队列有控制消息,另一个队列有数据消息。根据来自控制队列的消息的 JMSCorrelationID,我需要从数据队列中仅读取具有该 JMSCorrelationID 的消息。

我可以使用如下定义的选择器有选择地从数据队列中读取消息。

<int-jms:message-driven-channel-adapter id="messageDrivenInboundAdapter"
channel="inboundChannel" destination-name="inboundMQ"
selector="JMSCorrelationID = 'JMSCORELIS1234'"
connection-factory="connectionFactory" extract-payload="false"/>

我需要根据在不同 channel 上收到的消息动态更新选择器的 JMSCorrelationID 值。

可以这样做吗?在 spring 集成中是否有不同的方法来实现这个解决方案?

最佳答案

使用消息驱动适配器是不可能的;选择器被烘焙到初始化期间构造的消息监听器容器中。

您可以更改轮询 <inbound-channel-adapter/> 的消息选择器;该更改将在下次投票时生效。

您可以获得 JmsDestinationPollingSource 的句柄使用 Autowiring ,或通过 bean 名称 ( adapterId.source )。

关于java - Spring集成动态消息选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33446895/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com