不接受MULE表达式转换器

不接受MULE表达式转换器,mule,expression,Mule,Expression,我试图学习Mule ESB,但在示例项目中遇到了问题。为什么要排这些队 下划线为红色且未在消息流中表示 <expression-transformer name="returnAttachments"> <return-argument evaluator="attachments-list" expression="*.txt,*.ozb,*.xml" optional="false"/> </expression-transformer&

我试图学习Mule ESB,但在示例项目中遇到了问题。为什么要排这些队 下划线为红色且未在消息流中表示

<expression-transformer name="returnAttachments">
        <return-argument evaluator="attachments-list" expression="*.txt,*.ozb,*.xml" optional="false"/>
    </expression-transformer>


作为示例项目的一部分,我从mulesoft.org剪切并粘贴了这些行。

Mule studio在呈现嵌套元素时遇到问题(报告了错误)

相反,您可以使用压缩版本,并将其替换为以下内容:

<expression-transformer expression="#[attachments-list:*.txt,*.ozb,*.xml]"  doc:name="Expression" />


从mule 3.3.0成为新版本开始,建议尽可能使用它。

@genjosanzo是正确的,MEL等效值为:

<expression-transformer
        expression="#[($.value in message.inboundAttachments.entrySet() if $.key ~= '(.*\\.txt|.*\\.ozb|.*\\.xml)')]" />

您需要接受@genjosanzo的答案,否则问题仍然悬而未决。