我将bean绑定到jsp页面中的inputtext UI元素的整数属性.
最初在渲染它们时,此整数属性的默认值为null.
现在,当我在不更改此inputtext字段的情况下提交表单时,即使ui文本字段为空,此字段也会在bean中设置为整数值零.
因为我想跟踪字段的更改并仅更新配置文件中更改的那些字段,但这给我带来了问题,因为它导致对所有整数字段的更新.
我正在使用jsf 1.2
Bal*_*usC 18
然而,这个问题特定于Tomcat的EL实现(例如Glassfish,不会暴露这种愚蠢的行为).在Tomcat 6.0.16之前,它曾经"直观地预期"工作.然后他们发现它实际上违反了文字 EL规范并修复了它.经过大量的批评后,他们从6.0.17及以上开始进行配置.您可以通过添加以下VM参数将其关闭:
-Dorg.apache.el.parser.COERCE_TO_ZERO=false
Run Code Online (Sandbox Code Playgroud)
这是IMO比攻击getter/setter更好.你不想像那样污染你的模型.
| 归档时间: |
|
| 查看次数: |
12962 次 |
| 最近记录: |