假设我有一个需要使用MVEL评估的下面的表达式。
(((A * B)+ C)/ D)
假设B的值为NULL,则MVEL将“A * B”评估为FALSE。 “(A * B)+ C”变为FalseC 然后FalseC / D抛出异常
如何防止这种情况...... ??
答案 0 :(得分:0)
截至目前,我们已经解决了这个问题。 如果您在Mvel API类中实际调试它,则它们会针对此特定情况显式返回false。如果Mvel可以解决这个问题,那就很好了。但是我也遇到了同样的问题,所以我们做了什么,我们在执行表达式之前创建了一些智能,我们修改了表达式并包含了" IF"条件检查是否为空并且操作符为" /"或" *",返回null。