2012-07-06 60 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>