如何检查Mule MEL中是否存在会话变量?

TER*_*ytE 3 variables mule mel mule-studio

我需要检查会话变量是否存在.我可以检查它是否存在并设置为变量:

<when expression="#[sessionVars['foo'] == 'true']">
Run Code Online (Sandbox Code Playgroud)

但是我想要这样的东西:

<when expression="#[sessionVars['foo']]">
-- or --
<when expression="#[Exists(sessionVars['foo'])]">
Run Code Online (Sandbox Code Playgroud)

因为,有时'foo'没有赋值变量.

有任何想法吗?

Dav*_*sot 6

测试无效应该可以解决问题:

<when expression="#[sessionVars['foo'] == null]">
Run Code Online (Sandbox Code Playgroud)

或者,如下安东所建议:

<when expression="#[sessionVars.containsKey('foo')]">
Run Code Online (Sandbox Code Playgroud)

  • sessionVars.containsKey('foo') (2认同)