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

时间:2012-03-19 12:41:29

标签: java jsp el

我有BigDecimal属性的课程。当我绑定EL表达式并传递null - valueExpression.set(context, null)时,属性的新值变为BigDecimal.ZERO

有没有办法将null传递给BigDecimal字段而不将其转换为零?

1 个答案:

答案 0 :(得分:2)

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

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

另请参阅JSP/EL spec issue 184Tomcat issue 42385