在騾子的流動,我需要的最後兩個參數從輸入字符串消息比較騾子選擇比較
2012-04-30,2012-05-30,1,5
而且如果param1(1) <= param2(5)
,我需要執行jms:outbound-endpoint
。
有沒有一個標準的選擇元素來做到這一點?你能舉個例子嗎?在使用
在騾子的流動,我需要的最後兩個參數從輸入字符串消息比較騾子選擇比較
2012-04-30,2012-05-30,1,5
而且如果param1(1) <= param2(5)
,我需要執行jms:outbound-endpoint
。
有沒有一個標準的選擇元素來做到這一點?你能舉個例子嗎?在使用
騾子3.2.x中你最好的選擇是使用常規評估和使用如下所示
<when expression="#[groovy:payload.split(',')[2] <= payload.split(',')[3] ]">
<processor-chain>
<jms:outbound-endpoint queue="out" doc:name="JMS"/>
</processor-chain>
</when>
否則,如果你願意升級到騾子選擇路由器3.3.0可以充分利用新Mule Expression Language允許這樣做,而不需要在常規操作的
你可以利用新的騾子表達式語言,它允許做同樣的,而不需要在常規運營商的優勢
你不必使用Groovy這樣做的比較邏輯。你可以直接在有效載荷上應用split()函數。
<when expression="#[payload.split(',')[2]<=payload.split(',')[3]]">
<processor-chain doc:name="Processor Chain">
<jms:outbound-endpoint queue="data" connector-ref="Active_MQ"doc:name="JMS"/>
</processor-chain>
</when>
除了表達式過濾器,您還可以使用選擇性流量控制。捕獲流量比較中的2個值,並在選擇流量控制條件時使用以下表達式。
給予下面的鏈接的詳細信息。
https://docs.mulesoft.com/mule-user-guide/v/3.7/choice-flow-control-reference
你正在使用哪個版本的mule? – genjosanzo 2012-07-07 07:48:18
@genjosanzo我已經使用版本=「CE-3.2.1」 – IgorOK 2012-07-07 09:52:38