2012-07-06 78 views
0

在騾子的流動,我需要的最後兩個參數從輸入字符串消息比較騾子選擇比較

2012-04-30,2012-05-30,1,5

而且如果param1(1) <= param2(5),我需要執行jms:outbound-endpoint

有沒有一個標準的選擇元素來做到這一點?你能舉個例子嗎?在使用

+0

你正在使用哪個版本的mule? – genjosanzo 2012-07-07 07:48:18

+0

@genjosanzo我已經使用版本=「CE-3.2.1」 – IgorOK 2012-07-07 09:52:38

回答

2

騾子3.2.x中你最好的選擇是使用常規評估和使用如下所示

<when expression="#[groovy:payload.split(',')[2] &lt;= payload.split(',')[3] ]"> 
     <processor-chain> 
      <jms:outbound-endpoint queue="out" doc:name="JMS"/> 
     </processor-chain> 
</when> 

否則,如果你願意升級到騾子選擇路由器3.3.0可以充分利用新Mule Expression Language允許這樣做,而不需要在常規操作的

-1

你可以利用新的騾子表達式語言,它允許做同樣的,而不需要在常規運營商的優勢

0

你也可以使用分離器和分離的基礎上「」再有針對PARAMS

+1

顯示一些例子,讓人們可以輕鬆地理解 – SteveFest 2017-06-12 10:17:04

0

你不必使用Groovy這樣做的比較邏輯。你可以直接在有效載荷上應用split()函數。

<when expression="#[payload.split(',')[2]&lt;=payload.split(',')[3]]"> 
    <processor-chain doc:name="Processor Chain"> 
    <jms:outbound-endpoint queue="data" connector-ref="Active_MQ"doc:name="JMS"/> 
    </processor-chain> 
</when>