即使A4j验证失败,也要提交表单+;jsf
我使用a4j检查onblur事件的用户名是否存在 当用户已经存在时,它会显示错误消息,但如果我单击 “提交”按钮,在显示错误消息后提交 当输入文本的required=true时,它不会被提交 required=“true”validator=“#{RegistrationBean.checkFirstName}”>即使A4j验证失败,也要提交表单+;jsf,jsf,Jsf,我使用a4j检查onblur事件的用户名是否存在 当用户已经存在时,它会显示错误消息,但如果我单击 “提交”按钮,在显示错误消息后提交 当输入文本的required=true时,它不会被提交 required=“true”validator=“#{RegistrationBean.checkFirstName}”> public void checkFirstName(FacesContext FacesContext,UIComponent component,Object value)
public void checkFirstName(FacesContext FacesContext,UIComponent component,Object value)
{
有人能告诉我JSF代码哪里出了问题吗?这样会更容易帮助您。所以我建议您在JSF页面中有类似的内容:
<h:inputText id="firstName" ... validator="#{aBean.checkFirstName}">
这样,如果此字段中填写的值为空或已存在,将引发ValidatorException,用户将收到错误消息(不要忘记在表单中添加
或
组件),并且表单将不会提交!使用JSF代码,将更容易帮助您。因此,我建议您在JSF页面中使用类似的内容:
<h:inputText id="firstName" ... validator="#{aBean.checkFirstName}">
这样,如果此字段中填写的值为空或已存在,将引发ValidatorException,用户将收到错误消息(不要忘记在表单中添加
或
组件),并且表单将不会提交!如果您的问题得到解决,请选择我的答案作为正确答案(如果是这样)(单击左侧0下方的图标)如果您的问题已解决,请选择我的答案作为正确答案(如果是这样)(单击左侧0下方的图标)
public void checkFirstName(FacesContext facesContext, UIComponent component, Object value) {
String name = (String) value;
if ((name == null) || name.trim().length() == 0) {
System.out.println("Name *******");
String message = bundle.getString("Name_Required");
throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_ERROR, message, message)); // Throw the required error
}
if (name.trim().equalsIgnoreCase("tom")) {
String message = bundle.getString("Name_exists");
throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_ERROR, message, message)); // Throw the already exist error
}
}