我正在处理一个遗留代码库,遇到了这样一种情况,当有必要验证字段"fieldToValidate"时,如果其他字段"otherField"有一些值(否则字段不被验证)。但是,字段"otherField"没有绑定属性。我可以添加绑定,然后像这样更新代码:
<h:inputTextarea id="fieldToValidate" value="#{MyBean.fieldToValidate}"
required="#{MyBean.otherField != 'special_value'}" />
然而,有很多地方应该添加验证,我不想修改支持bean。有没有一种方法来实现验证而不添加"绑定"?
您不一定需要将绑定到bean属性。省略MyBean.
部分,直接将其绑定到视图作用域。
<h:selectOneMenu binding="#{otherField}" ... />
...
<h:inputTextarea ... required="#{otherField != 'special_value'}" />
参见:
- 没有bean属性的JSF组件绑定 什么是JSF中的组件绑定?什么时候更适合使用?