Comparison 用于比较java对象属性值的Mule表达式

Comparison 用于比较java对象属性值的Mule表达式,comparison,expression,mule,Comparison,Expression,Mule,我试图比较mule表达式中的java对象值,如下所示 #[message.EventHandlerMessage.eventId==“发送通知”] 上面的表达式失败,表达式“message.EventHandlerMessage.eventId=='SEND_IMEX'”的执行失败。(org.mule.api.expression.ExpressionRuntimeException)。消息负载的类型为:EventHandlerMessage(org.mule.api.MessaginExcep

我试图比较mule表达式中的java对象值,如下所示

#[message.EventHandlerMessage.eventId==“发送通知”]

上面的表达式失败,表达式“message.EventHandlerMessage.eventId=='SEND_IMEX'”的执行失败。(org.mule.api.expression.ExpressionRuntimeException)。消息负载的类型为:EventHandlerMessage(org.mule.api.MessaginException)

带有记录器组件的java对象内容 LoggerMessageProcessor-INFO----message=“EventHandlerMessage[refId=10002,eventId=SEND\u通知,eventRefNo=100000001212]”

如何将Eventhandler消息中的eventid与mule表达式进行比较?

当您进行类似的比较时,为什么会显示“message.EventHandlerMessage.eventid='SEND\u IMEX'”,而您的错误显示为“message.EventHandlerMessage.eventid=='SEND\u NOTIFICATION']


在尝试比较之前,请尝试使用MEL打印该值,并查看它是否正在打印,然后您可以进行比较。

消息上下文中将没有属性
消息。EventHandlerMessage
。以下是您可以在
消息
上访问的属性:

如果您的负载是
EventHandlerMessage.class
的实例,请尝试改用此选项:

#[message.payload.eventId]

我对那个日志感到困惑。那是记录有效载荷吗?您是否可以尝试
#[payload.message.eventId]
?是否尝试在选择组件中进行比较?