我有一个流程,我希望在smtp主题属性上创建一个表达式,但总是得到mvel parse表达式,尽管记录器给出了正确的值。
<json:object-to-json-transformer doc:name="Object to JSON"/>
<logger message="MYRequestPayloadID #[json:RequestPayloadID] #[json:ResponseStatusCd]" level="DEBUG" doc:name="Logger"/>
<smtp:outbound-endpoint host="${mail.host}" to="${mail.to}" from="${mail.from}" subject="Error Response for PayloadID #[json:RequestPayloadID], Status #[json:ResponseStatusCd]" responseTimeout="10000" doc:name="SMTP />
我不确定为什么在主题#[json:RequestPayloadID]和#[json:ResponseStatusCd]评估失败,尽管我在记录器中得到了数据。感谢。
答案 0 :(得分:2)
Mule(唉)中不支持表达式:这是一个不存在的地方。
您必须使用消息属性动态设置主题:
<set-property propertyName="subject"
value="Error Response for PayloadID #[json:RequestPayloadID], Status #[json:ResponseStatusCd]" />
FTR json:
是旧的表达方式,现在你应该使用MEL代替:http://www.mulesoft.org/documentation/display/current/Mule+Expression+Language+Tips#MuleExpressionLanguageTips-JSONProcessing