2012-12-19 33 views
0

我有一個SQL腳本將數據從IS_ZERO_VALUE字段中提取出來。該值是數字,可以是「1」或「0」。我不能讓騾子來評估值:如何使用Groovy的Choice變換器評估數值表達式?

<when expression="payload.IS_ZERO_VALUE==0" evaluator="groovy"> 

騾似乎評價這是「假」的值是1還是0。如果我改變SQL腳本輸出「NO」,如果0一個「是」,如果1騾沒有麻煩使用...

<when expression="payload.IS_ZERO_VALUE=='NO'" evaluator="groovy"> 

回答

1

你確定這個值是數值嗎?

如果是,那麼不知道爲什麼會發生這種情況......但在3.3.0中,您不需要Groovy來處理這類表達式,因此MEL就是您想要使用的。

嘗試用:

<when expression="#[message.payload.IS_ZERO_VALUE==0]" /> 
+0

我超級確保它的數字,我試圖引用它,以防萬一,但它仍然沒有在Groovy工作。但是使用你的MEL表達式起作用。再次感謝大衛!你在哪裏找到有關這方面的文件? –

+0

以下是MEL官方文檔http://www.mulesoft.org/documentation/display/MULE3USER/Mule+Expression+Language和MVEL http://mvel.codehaus.org/Language+Guide+for+2.0 –