一尘不染

EL表达式:将null作为BigDecimal字段的值传递

jsp

BigDecimal有财产课。当我将其绑定到EL表达式并传递null时valueExpression.set(context, null),property的新值将变为BigDecimal.ZERO

有什么方法可以将null传递给BigDecimal字段而不将其转换为零吗?


阅读 706

收藏
2020-06-08

共1个答案

一尘不染

您似乎正在运行至少版本为6.0.16的Tomcat或类似JBoss AS的Tomcat。Tomcat内置的Apache
EL解析器确实可以对所有扩展类执行此操作Number。您需要添加以下VM参数来禁用此行为(这确实不直观,但不幸的是严格按照EL规范严格执行):

-Dorg.apache.el.parser.COERCE_TO_ZERO=false

另请参见JSP /
EL规范第184期
Tomcat第42385期

2020-06-08