JSF 2.0只允许您验证一个字段的输入,例如检查它是否是一定长度.它不允许您有一个表单,"输入城市和州,或只输入邮政编码".
你是怎么得到这个的?我只对涉及JSF验证阶段的答案感兴趣.我对管理Bean中的验证逻辑不感兴趣.
我需要FacesMessage
为这个组件显示一个,如下所示,
问题是它在 UI 上多次显示,如下所示,
其次,输入的日期40.06.2015
是无效的,因此FacesMessage
, 但它被转换为10.07.2015
. 我不知道如何防止这种情况。任何帮助都受到高度赞赏。我知道它可以setLenient()
在DateFormat
课堂上轻松处理,但不知何故,在我可以在后台使用之前,UI 组件将其转换为下个月的日期。
附加到该组件的验证器如下:
那么,如何避免多次显示“请以正确格式输入日期”?
我想到了使用h:message
而不是h:messages
, 并在验证器方法的 catch 块中像这样
FacesContext.getCurrentInstance().addMessage("formId:aboveCompId", message);
Run Code Online (Sandbox Code Playgroud)
但 UI 上没有显示任何内容。有什么建议?