NullPayload 与 null 检查
NullPayload vs null check
根据以下票证:https://www.mulesoft.org/jira/browse/MULE-6427 对于 NullPayload,我应该可以使用:
<when expression="#[payload == null]">
但这不起作用。它失败。我正在使用 Mule 3.5.1
这是一个示例流程:
<flow name="testNull">
<poll frequency="10000">
<logger />
</poll>
<set-payload value="#[org.mule.transport.NullPayload.getInstance()]" />
<choice>
<when expression="#[payload == null]">
<logger level="ERROR" message="NullPayload is same as null" />
</when>
<otherwise>
<logger level="ERROR" message="Doesnt work" />
</otherwise>
</choice>
</flow>
这将始终打印“不起作用”。但是 message.payload == null 有效。 "payload" 和 "message.payload" 有什么区别?
#[payload]
别名似乎有问题。使用真实的东西,它会起作用:#[message.payload]
.
根据以下票证:https://www.mulesoft.org/jira/browse/MULE-6427 对于 NullPayload,我应该可以使用:
<when expression="#[payload == null]">
但这不起作用。它失败。我正在使用 Mule 3.5.1
这是一个示例流程:
<flow name="testNull">
<poll frequency="10000">
<logger />
</poll>
<set-payload value="#[org.mule.transport.NullPayload.getInstance()]" />
<choice>
<when expression="#[payload == null]">
<logger level="ERROR" message="NullPayload is same as null" />
</when>
<otherwise>
<logger level="ERROR" message="Doesnt work" />
</otherwise>
</choice>
</flow>
这将始终打印“不起作用”。但是 message.payload == null 有效。 "payload" 和 "message.payload" 有什么区别?
#[payload]
别名似乎有问题。使用真实的东西,它会起作用:#[message.payload]
.