我编写了一个自定义验证器来验证所有表单字段。我正在使用 Incefaces 3.2 和 JSF 2.0。我注意到整数类型的 UIInput 上有多个问题。如果我没有在表单上输入任何数据并单击提交,我可以使用 myUIInput.getValue() 检查自定义验证器中的字段值并触发所需的验证。
当我在字段中输入一些值并提交时,我在我的自定义验证器中使用 getSubmittedValue() 来验证它。到目前为止,一切都很好。当我从 UI 中删除字段中的值(将其清空)并提交时,getValue() 仍保留旧值。isLocalValueSet() 总是返回 null。
第一次触发验证后,我尝试重置以下内容。它也没有帮助。
myInput.setValue(null);
myInput.setSubmittedValue(null);
myInput.setLocalValueSet(false);
如何将我的字段状态重置为初始值?触发验证后如何正确设置 isLocalValueSet()?提前致谢。