Validação com Bean Validation

Postado por em   ●   5 comentários

Bean Validation é uma especificação que permite validar objetos com facilidade em diferentes camadas da aplicação. A vantagem de usar Bean Validation é que as restrições ficam inseridas nas classes de modelo.

Precisamos de uma implementação de Bean Validation. As implementações podem adicionar restrições customizadas, além das fornecidas pela especificação. Usaremos Hibernate Validator, a implementação de referência.

Para desenvolver nosso exemplo, criaremos um projeto Maven e incluiremos o código abaixo no pom.xml:

As restrições de Bean Validation são em forma de anotações, disponíveis no pacote javax.validation.constraints. Veja um exemplo:

A anotação @NotNull valida se o valor da propriedade não é nulo e @Size valida se a string tem a quantidade de caracteres entre o mínimo e máximo informados. Existem diversas outras anotações e você também pode criar as suas próprias.

Para verificar o funcionamento, criaremos uma classe de teste com JUnit no source folder src/test/java, chamada ClienteTest.

Todos os nossos testes devem passar.

JavaServer Faces integra com Bean Validation para validar objetos preenchidos pelas páginas que criamos.

Para testar, incluiremos uma implementação do JSF no pom.xml da nossa aplicação.

Depois, criaremos um managed bean chamado CadastroClienteBean.

Agora, criaremos uma página chamada CadastroCliente.xhtml, na pasta src/main/webapp.

Pronto! Podemos implantar nossa aplicação no Apache Tomcat (ou outro container) e acessar a página pelo endereço http://localhost:8080/validacao-beanvalidation/faces/CadastroCliente.xhtml. A validação funcionará automaticamente.

Para aprender mais sobre Bean Validation, JSF e diversas outras tecnologias, conheça os cursos online da AlgaWorks, que são completos e substituem a necessidade de cursos presenciais.

Acesse ou baixe o código-fonte completo deste artigo no GitHub.

Fundador e instrutor da AlgaWorks. Certificado como programador Java pela Sun, autor e co-autor de diversos livros de Java, Java EE, JPA, JSF e PrimeFaces e palestrante da maior conferência de Java do mundo (JavaOne San Francisco). Iniciou seu interesse por programação aos 14 anos de idade (1995), quando desenvolveu o primeiro jogo de truco online e multiplayer do mundo. Já foi sócio e trabalhou em outras empresas de software como programador, gerente e diretor de tecnologia, mas nunca deixou de programar.

5 comentários sobre “Validação com Bean Validation

  1. Jean Carlos -

    Já fiz o curso de JSF da Algaworks, muito bom, gostei muito, espero que continuem postando artigos dessa qualidade.

  2. Marcelo -

    Excelente como sempre, obrigado por compartilhar.

  3. Manda Kiendo -

    Olá Thiago, Estás de parabéns pala esta disponibilidade e pela forma simples e claro que usas para ensinar, nota-se que tens paixão e vocação para tal.

    Quero saber como criar Data e Hora Ex. “quinta-feira, 24 de Fevereiro de 2016 – 22:30” Usando ferramentas do PrimeFaces, Agradecia.

    Que Deus te abençoe.

  4. Manda Kiendo -

    Olá Thiago, Estás de parabéns pala esta disponibilidade e pela forma simples e claro que usas para ensinar, nota-se que tens paixão e vocação para tal.

    Quero saber como criar Data e Hora Ex. “quinta-feira, 24 de Fevereiro de 2016 – 22:30” Usando ferramentas do PrimeFaces, Agradecia.

    Que Deus te abençoe.

    Luanda – Angola

  5. Leandro -

    Prático (exemplo em código fonte
    Teórico (O que é?, Para que serve?, como
    surgiu, quem utiliza?, etc… )

Deixe um comentário