如何动态设置等待消息发送到mule中的Active mq

How to dynamically set wait message to send to Active mq in mule

有什么方法可以为从 mule 发送到 Active mq 的消息动态设置等待值?
我有一个要求,在发送到 Active mq 中的队列之前需要等待消息。我需要动态地使等待值配置可能来自变量。
我知道我可以在 groovy 中使用 sleep() 来让消息保留一段时间,我看到的例子很少,但我不想使用 groovy 或 sleep()或任何类型的黑客来做到这一点。

连接器级别还有其他方法吗?

我想你需要AMQ_SCHEDULED_DELAY header在jms组件中设置延迟。
您可以通过流变量将其设置为 header.
您可以在此处找到可以帮助您的示例 https://dzone.com/articles/delay-with-jms

在这里你可以如何设置组件级别的延迟

<message-properties-transformer doc:name="Message Properties">
<add-message-property key="AMQ_SCHEDULED_DELAY" value="#[flowVars.delay]"/>
</message-properties-transformer>
<json:object-to-json-transformer doc:name="Object to JSON"/>
<jms:outbound-endpoint queue="testqueue" connector-ref="Active_MQ" doc:name="JMS"/>

现在您在发送 mule 流之前设置流变量