1

假设我有一个需要使用 MVEL 评估的以下表达式。

( ( ( A * B ) + C ) / D )

假设 B 的值为 NULL,则 MVEL 将“A * B”评估为 FALSE。"(A * B) + C" 变为 FalseC 然后 FalseC/D 抛出异常

如何防止这种情况...??

4

1 回答 1

0

到目前为止,我们解决了这个问题。如果你真的在 Mvel API 类中调试它,它们会显式地为这种特殊情况返回 false。如果 Mvel 能解决这个问题,那就太好了。但是我也遇到了同样的问题,所以我们做了什么,我们在执行表达式之前创建了一些智能,我们修改了表达式并包含“IF”条件来检查字段是否为空并且运算符为“/”或“* ",返回空值。

于 2014-03-30T17:01:46.710 回答