Mvel表达式评估问题,如果value为null

时间:2013-11-26 15:39:53

标签: java scripting mvel

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

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

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

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

1 个答案:

答案 0 :(得分:0)

截至目前,我们已经解决了这个问题。 如果您在Mvel API类中实际调试它,则它们会针对此特定情况显式返回false。如果Mvel可以解决这个问题,那就很好了。但是我也遇到了同样的问题,所以我们做了什么,我们在执行表达式之前创建了一些智能,我们修改了表达式并包含了" IF"条件检查是否为空并且操作符为" /"或" *",返回null。