Boa tarde pessoal,
Estou com um problema. Estou desenvolvendo uma aplicação com páginas em JSF. As validações estão sendo feitas com o validator.
Faces-config.xml
<validator>
<display-name>numericoValidator</display-name>
<validator-id>numericoValidator</validator-id>
<validator-class>br.com.projeto.web.acb.view.validators.NumericoValidator</validator-class>
</validator>
No arquivo JSP
<br:brInputText id="depto" value="#{compulsorioBean.viewHelper.departamento}"
styleClass="HtmlInputText" size="5" maxlength="4">
<f:validator validatorId="numericoValidator" />
</br:brInputText>
<h:message for="depto"></h:message>
E a classe de validação:
public class NumericoValidator implements Validator {
public void validate(FacesContext arg0, UIComponent arg1, Object obj)
throws ValidatorException {
String valor = obj.toString();
if (!valor.matches("[0-9].*")){
throw new ValidatorException(new FacesMessage("Campo deve ser numérico."));
}
}
}
Até aí ok, quando eu insiro uma letra, por exemplo, a mensagem da validação aparece ok, porém na própria página. Eu preciso que esta mensagem apareça em um alert.
Agradeço a ajuda, obrigado.