验证期间UIInput#getValue()和getLocalValue()之间的差异

133*_*337 5 validation lifecycle jsf jsf-2

我想在执行多个字段验证方面有一个关于组件getValue()getLocalValue()方法之间差异的说明性解释:jsf一次验证两个字段.UIInput

如果字段已经过验证,这种方法的用法有何不同?该ValueHolderAPI文档不回答这个问题非常有帮助.

Bal*_*usC 6

如果UIInput组件已事先验证并标记为无效(即isValid()方法返回false),则getLocalValue()返回null,但getValue()返回旧模型值(如果有).如果它被标记为有效,则两者都返回相同的值,即提交,转换和验证的值.

您想isValid()事先添加一张支票.您可能会发现OmniFaces多字段验证器的源代码示例很有用.请参阅展示页面ValidateMultipleFields底部的源代码链接<o:validateEqual>.

也可以看看: