Série 1 Aplicações JEE – JSF

olá Pessoal, depois de muito tempo sem trazer uma  série para o post, resolvir criar uma para quem está querendo aprender um framework para JEE, nesse caso JSF, onde vou mostrar como criar um formulário usando esse framework tendo a IDE Netbeans como ambiente de desenvolvimento e o glassfish como servidor de app. Parece um exemplo bobo, “criar formulário de login/senha” mas usaremos esse exemplo “bobo” para mostrar como é mais prazeroso usar JavaServerFaces para desenvolvimento JEE. Então para quem está aprendendo o framework da Sun nada melhor dar os primeiros passos com exemplos simples, concorda ? Então temos aqui o primeiro post da série JSF, nos próximos veremos exemplos mais “hot” e finalizaremos a série conectado JSF com BD. Não esqueçam de analisar a produtividade oferecida com o framework e a facilidade de manutenção.

Lets go…

Um pouco sobre JavaServerFaces

É um framework desenvolvido pela Sun, tendo como objetivo facilitar o desenvolvimento de aplicações Web através de componentes de interface de usuário (GUI) e conectar estes componentes a objetos de negócios. Read more…

Livro JSF in Action :Estou lendo este livro para aprimorar meus conhecimentos sobre o framework e realmente o material está excelente, com uma leitura bem confortável. E o melhor nem tão caro é para quem tem cartão internacional e puder comprar no amazon.com (aqui no Brasil nao sei o valor do livro, mas tenho certeza que será mais caro).

Requisitos:

Passo 1

Aqui vamos criar o projeto e o Bean para que o JSF possa acessar.

  1. crie um novo projeto no NB. Dê nome ao projeto, e depois clique em next.

  2. Na quarta parte  onde deve escolher algum framework marque JavaServerFaces. Em Servlet URL Mapping altere para *.jsf . Em seguida clique em finish

  3. jsf1

  4. A estrutura do seu projeto deve ser semelhante a da imagem a seguir

    jsfestrutura

    faces-config.xml = é o arquivo de navegação da sua aplicação com jsf.

  5. crie uma classe java chamada CamBean tendo uma variavel do tipo String nome e em seguida use a tecnica de refatoração “encapsulated field” da IDE. Clique no menu Refactor ==> Encapsulated Field. Em seguida diga que os metodos serão public e os campos private.

  6. Crie um método chamado verifica com o tipo de retorno String

    jsfclassjava

Passo 2 Criar o formulário usando JSF. Para isso altere o arquivo welcomeJSF.jsp deixando como na imagem a seguir

formjsf2

Passo 3

Fazer o mapeamento no arquivo face-config.xml, para navegação da aplicação.

  1. abra o face-config.xml, normalmente esse estará no modo PageFlow altere para XML e clique com o botão direito em qualquer parte em branco e depois clique na opcao como na imagem a seguir.

    <img jsfbean>jsfbean

  2. Agora vamos inserir as regras, para qual pagina inicial deve ser chamada como default. Faça o mesmo procedimento da imagem anterior, mas dessa vez escolha Add Navigation Rule. E preencha a tela que apareceu conforme abaixo.

    <img jsfrule>jsfrule

  3. Salve as alterações. E em seguida crie duas páginas JSP uma com o nome de sucesso.jsp e outra falha.jsp. Essas serão as páginas que serão exibidas de acordo com o resultado.

  4. Abra o arquivo face-config.xml no modo PageFlow e deixe conforme a imagem a seguir.

    <img jsfaceflow>jsffaceflow

Testando aplicação

Para testar aplicação é bem simples, basta clicar com o botão direito do mouse e escolher a opção “Run” e aguardar.

jsftest0

jsftest1

jsftest2

Bom, pessoal! Vou ficando por aqui, e espero que tenham gostado deste primeiro post da série. Até o próximo post.

Um abraço,

3 comentários em “Série 1 Aplicações JEE – JSF”

  1. Camilo

    Achei interessante e muito bom o tutorial para quem não conhece java. Se tivesse mais tutoriais para aprendermos mais seria muito bom.

    Tentei fazer o passo a passo conforme o tutorial e parece que faltou alguma coisa no código. Quando executo e digito o login e senha dá esta mensagem de erro abaixo:

    Descrição: Ocorreu uma exceção não manipulada durante a execução do aplicativo da Web. Consulte o seguinte rastreamento da pilha para obter mais informações relativas ao erro.

    Detalhes da exceção: javax.el.PropertyNotFoundException
    Target Unreachable, identifier ‘CamNome’ resolved to null

    Possível origem de erro:
    Nome da classe: com.sun.el.parser.AstValue
    Nome do arquivo: AstValue.java
    Nome do método: getTarget
    Número de linha: 84

    Tambem não sei se na hora de linkar a página é para colocar o hyperlink na pagina faces para os 2 botões?

    Grato por qq esclarecimento.

  2. olá Octacilio,

    obrigado por acessar o blog, mas estranho esse seu erro, aqui está executando tranquilo e outras pessoas ja fizeram e passaram. Mas vou enviar para o seu email o projeto .zip para vc comparar e ver o que fez de errado. Eu olhei aqui e nenhum dos arquivos tem mais de 50 linhas de codigo. To achando que pode ser algo na sua IDE, nao sei. Depos vc posta onde estava o erro, até eu gostaria de saber.
    abraco,

  3. Na parte if(!login.equalsIgnoreCase(“rogeiro”) && !senha.equalsIgnoreCase(“1234”)) {
    De onde ele ta pegando o login e a senha?
    Sugiro q vc disponibilize ainda os arquivos, pois pra quem fez no eclipse, por exemplo, fica perdido na hora de gerar o faces-config.
    abraços.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *