将空数转换为null

use*_*611 2 jsf tomcat el myfaces

是否有可能告诉我的JSF实现将空数转换为null.到目前为止,我总是得到0(相应的复杂类型).
对于空字符串有javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL,但我无法找到任何数字.顺便说一下:不,我不能使用vm-argument:-Dorg.apache.el.parser.COERCE_TO_ZERO = false

自定义数字转换器是我唯一的可能吗?

Bal*_*usC 7

不,我不能使用vm-argument:-Dorg.apache.el.parser.COERCE_TO_ZERO = false

问题出在服务器使用的EL实现中,而不是JSF中.您确实需要使用VM参数.如果您无法使用它,那么除了将Tomcat降级到6.0.15或更早版本,或者用例如Glassfish替换服务器之外,其他方式无法解决您的问题.当这种"改进的"EL强制行为被引入时,它是Tomcat 6.0.16.

如果你详细说明为什么你不能使用它(这对我来说至少没有意义),那么我们可能会提出如何真正使用它的方法.例如,如果无知如何设置VM参数,那么就这样说.或者,如果您不允许将VM参数添加到启动脚本,因为它是第三方维护的服务器,那么请说明.可以解决这两个问题,以便您可以正确使用VM参数.

  • 然后转到这个答案:http://stackoverflow.com/questions/5225013/coerce-to-zero-at-runtime/5225055#5225055 (2认同)