Top Posts

Solucionado ROLE_ Spring Security

Continue lendo

Validando campos com JSF

Posted by camilolopes | Posted in JSF | Posted on 21-02-2012

2

 

olá Pessoal, hoje o post é dedicado para quem está aprendendo JSF e pretende usar os recursos de validação de campo do proprio  framework. Perguntas comuns sobre validação: como validar um email? Como validar um campo número? É isso que veremos, claro que mostrarei um pequeno exemplo “motivador”, vai de você criar outras validações para seu formulário. Observe que é algo bem simples e funcional. E para aqueles que  estão estudando para antiga SCJP e acham que regex é algo somente para certificação, Vejam nesse post o poder que regex tem. No post tem um link para “testador de expressões regex online”. Muito show, já tem até alguns exemplos prontos tais como: validação de IP, telefone etc.

lets go…

Preparando o ambiente

Certifique-se que você tem os arquivos .jars necessário para rodar JSF. Confira nos posts a seguir quais os arquivos que vc precisa. Sem falar que usar Jboss tools seria uma boa ideia. Para o nosso exemplo usaremos o plugin no Eclipse Jboss tools para suporte à JSF. Também não pode esquecer que nosso application server  será  o Tomcat, se ainda não instalou/configurou veja no exemplo abaixo.

Desenvolvimento

    1. Com o Jboss tools configurado e Eclipse aberto crie um novo JSF Project.

    2. Em WebContent crie uma página .jsp que redirecione para uma página chamada formulario.jsp. Mas, lembre-se que no seu arquivo index.jsp o code fica assim:

    3. Feito isso, vamos agora codificar nosso formulário em JSF. Para isso crie uma página em jsp com suporte JSF em WebContent chamando de formulario.jsp. Veja abaixo como criar uma página caso tenha esquecido:

    4. Abaixo temos nossa página em JSF. O uso de immediate=true em cada campo é para quando aparecer a mensagem de validação a pagina atual não seja processada, ou seja, ela não vai para a página seguinte enquanto você não atender os requisitos da validação.

    5. Agora crie uma página em .jsp que exiba uma mensagem qualquer. Pois, ela somente será exibida quando as validações da pagina do formulário forem válidas. Nos colocamos nessa página uma mensagem: Mensagem enviada com sucesso!

    6. Feito isso, precisamos criar nosso bean e controller. Então crie um package chamado br.com.bean e nele crie uma classe Java chamada de Usuario.java e deixe conforme abaixo:

  1. Agora crie um package br.com.controller e nele crie uma classe chamada Controller. É essa classe que será responsável por controlar nossa aplicação. Ela que diz aonde o usuário vai parar depois de uma determinada ação. Deixe conforme abaixo:

  2. Vá no arquivo face-config.xml e crie um ManageBean para a classe Controller conforme a imagem abaixo:

  3. Agora vamos adicionar as rules para navegação com as pages. Clique em Navigation Rules e a direita add. Veja abaixo como ficou:

  4. Precisamos apenas configurar o Navigation Cases. Veja:

  5. Uma explicação básica: “Quando vinher a uma mensagem chamada ‘sucesso’ da página formulario.jsp, favor de ir para a pagina mensagem.jsp”.

  6. Agora precisamos criar uma classe que vai validar os campos do nosso formulário, que nesse caso será apenas e-mail e idade. Para isso precisamos implementar uma interface JSF que vai nos auxiliar no processo. É a interface Validator. Para isso crie um package br.com.validator e uma classe EmailValidar e informe que essa classe implementa a interface Validator. Veja meu exemplo abaixo:

  7. Agora deixe sua classe conforme abaixo. E para não perder o costume, explicação está nos comentários.

  8. Agora vamos validar o campo idade, onde é permitido apenas digito. Crie a classe IdadeValidar.java e implemente o método Validator.

  9. Feito isso precisamos apenas informar para o nosso face-config.xml que usaremos nosso validador nesta aplicação. Veja como fazer isso:

  10. Faça o mesmo para o validator idade.

  11. Damos um nome ao validador e informamos a classe que tem a validação, o nome é requirido pois é ele que vamos usar no form.

  12. Agora vá na sua página que contém o formulário e deixe os campos email e idade conforme o código abaixo.

Testando Aplicação

  1. Salve as alterações. Se o tomcat estiver rodando, dar um stop e em seguida um start. E veja aplicação rodando. No nosso caso vamos rodar dentro do próprio Eclipse. Para isso a perspectiva que estamos usando é JavaEE depois clique com o botão direito em cima do projeto e vá em Run >> Run as >> Run on Server.

Vou ficando por aqui e espero que tenham gostado do post. Simples e básico.

See you next post! 😀

Importando Projeto JSF Eclipse

Posted by camilolopes | Posted in JSF | Posted on 16-10-2010

0

Olá pessoal,

No post de hoje, vou mostrar como importar um projeto JSF para o Eclipse. Parece algo simples, mas no Eclipse as vezes as coisas mais simples, é onde tem mais problemas. Sempre quando preciso fazer algo básico no Eclipse, fico surpreso com os problemas que surgem e dai preciso pesquisar pra ver se alguém já sofreu com algo. Mas, o de hoje fui brincado com Jboss tools eu achei a opção..

lets go…

Importando JSF Project Eclipse

A situação de importar um projeto para o Eclipse pode acontecer por vários motivos. A forma padrão que é bem comum a tentativa é ir no menu File >> Import e escolher a opção a abaixo:

importjsfprojecteclipse

Porém, ao escolhe a opção acima, você ainda vai precisar configurar algumas coisas para o X sair do projeto e conseguir executar e vezes isso se torna um pesadelo, pois nem sempre o projeto volta a executar, ou não reconhece o servidor de aplicação. Enfim eu tive vários probleminhas chatos, ao importar por dessa forma. E daí veio o formato de importação do Jboss tools que permite já pegar um projeto especifico JSF e fazer as devidas configurações de forma automática Basta escolher a seguinte opção:

importjsfprojectother

Clique em next e localize o web.xml do projeto, depois clique em next, verifique como será os folders e o servidor de application configurado, em seguida clique em finish. se ficar com o X, vai em properties do projeto clicando com o botão direito e veja a versão do Project Facet. Normalmente é Java 5 para JDK 1.5. Certifique-se que os .jars dos frameworks foram adicionados ao projeto, tais como: JSF, Hibernate, Toplink etc.

Um dos problemas que eu tive com a importação padrão é que as vezes, ele bagunçava meu arquivo web.xml e duplicava umas linhas de code era horrível, e daí meu projeto para de funcionar e tinha que fix na mão, ou pegando de outro projeto.

Espero que tenham gostado do post. See you next post guys!!