Olá Pessoal,
O Framework JavaServer Faces oferece alguns validadores já prontos para serem usados, como por exemplo: validar o tamanho máximo ou mínimo de uma String ou validar somente campos numéricos, entretanto esses validadores são limitado. Para contornar este problema, o JSF nos permite que sejam desenvolvidos validadores customizados/personalizados de acordo com a regra de negócio.
Neste post, irei mostrar um exemplo de validador customizado que serve para validar o CPF, é um exemplo bem simples, mais o foco é mostrar como que implementa este recurso no JSF.
O exemplo foi desenvolvido utilizando a IDE Eclipse e o servidor TomCat.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.
1. Passo: Estrutura do projeto:
2. Passo: Estrutura do arquivo web.xml:
3. Passo: Crie a Classe ManagedBean chamado de ValidaCPF no pacote managedbean, esta classe contém o atributo cpf com seu método get e set, o método validador do JSF, e um método que verifica se o CPF digitado é valido. A classe ficará de acordo com a imagem abaixo:
4. Passo: Estrutura do arquivo faces-config.xml:
5. Passo: Crie a página index.jsp, que conterá o formulário para digitar o CPF, de acordo com a imagem abaixo:
6. Passo: Crie uma página redirect.jsp, para redirecionar para o nosso formulário, nessa página basta acrescentar:
7. Passo: Executa o projeto, e verá a seguinte página:
8. Passo: Vamos testar, digitando um CPF inválido:
9. Passo: Vamos testar, digitando um CPF válido:
Bom galera, este foi um exemplo bem básico de como personalizar validadores no JSF.
Para quem quiser baixar o exemplo, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico à disposição.