sábado, 20 de março de 2010

Login de Usuários com EJB3 e JSF (Parte 2)

Olá Pessoal,


Esta é a segunda e última da parte do desenvolvimento de um Sistema de Login de Usuários, usando EJB3 para fazer a validação dos Usuários no nosso Banco de Dados, e JSF para a camada de apresentação do nosso Projeto.
Na primeira parte deixamos pronto, toda camada de EJB, agora nesta parte iremos criar o ManagedBean do Login e o Servlet Filter do Login.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.

1. Passo: Crie um ManagedBean, óbviamente dentro do projeto web, escolha o nome de LoginMB, defina um pacote com o nome managedbean, deixa seu escopo como session, feito isto, altera o código seu código, deixando igual ao da figura abaixo:


No código acima, criamos dois método, um para fazer o login e o outro para fazer o logout.


2. Passo: Agora vamos criar o Servlet Filter, informe o nome de LoginFilter, defina um pacote, pode ser chamado de filter, deixa o mapeamento das URLs como *.jsf, depois de criado o Filter, altera o código do método doFilter, para o que está mostrado na figura abaixo:

3. Passo: Deixe o arquivo faces-config.xml, como mostrado na imagem abaixo, caso não exista este arquivo, basta criá-lo.


4. Passo: O arquivo web.xml, deverá ficar parecido com a da figura abaixo:

5. Passo: Agora iremos criar nossas páginas .jsp, são cinco páginas, a primeira será o index.jsp, que apenas fará o encaminhamento para página de login.

6. Passo: Criamos agora a página para fazer o login, a página login.jsp, deverá ficar parecida com a figura abaixo.



7. Passo: Criamos agora a página home.jsp, esta página só deverá ser acessado para quem estiver logado, é uma página bem simples, conforme a figura abaixo.



8. Passo: Criamos agora a página logout.jsp, esta página se aberta quando o usuário sair do sistema, é uma página bem simples, conforme a figura abaixo.



9. Passo: Criamos agora a página falha.jsp, esta página será exibida quando um usuário inválido tentar entrar no sistema, é uma página bem simples, conforme a figura abaixo.



10. Passo: Primeiramente, iremos tentar entrar no sistema, com um usuário que não existe.

11. Passo: Quando não for encontrado o usuário, a página falha.jsp será exibida.

12. Passo: Tentamos agora com um usuário que esteja cadastrado.


13. Passo: A página home será exibida, mostrando o nome do usuário que está logado.


14. Passo: Quando o usuário, sair do sistema, a página logout será exibida.

Terminamos, o nosso projeto de Login, usando EJB3, Servlet Filter e JSF.
Para quem quiser baixar o projeto, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico a disposição.

Login de Usuários com EJB3 e JSF (Parte I)

Olá Pessoal,


Neste post irei mostrar um exemplo simples de como fazer autentificação de usuários, usando EJB3, para a regra de negócio, e o Framework JSF para a camada de apresentação, poderia ser um Servlet ou JSP para view. A aplicação foi desenvolvida no Netbeans 6.8, servidor GlassFish v3 e o Banco de Dados MySQL.
Por estarmos usando o JSF, poderiamos fazer o controle de autentificação usando um próprio recurso do JSF chamado de PhaseListener, que fica de uma forma mais integrado. Porém neste exemplo, será feito utilizando o bom e velho Filter.
Este post será dividido em duas partes, sendo que a primeira, iremos criar o BD e a tabela Usuario, também será criado o projeto no Netbeans, deixando toda a camada de EJB pronta. Para a segunda parte, será criado o Servlet Filtro e a camada do JSF.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.

1. Passo: A primeira coisa que devemos fazer é criar um Banco de Dados no Mysql, para isto basta usar seu programa de Gerenciamento de Banco de Dados e digitar o seguinte comando:

CREATE DATABASE JAVA;

Para criar a tabela de Usuário, use o seguinte comando:

CREATE TABLE USUARIO (
nome VARCHAR(20) PRIMARY KEY,
senha VARCHAR(20)
);

Criado nosso BD e a Tabela, já deixaremos um Usuário cadastro, para mais tarde podermos testar, simplesmente, digite o código abaixo:

INSERT INTO USUARIO values ('jabes', 'jabes');


2.Passo: Iremos criar um projeto JEE no Netbeans, para isto escolha Enterprise Application, o nome do projeto será Login, escolha o servidor GlassFish, criando um módulo EJB e um WAR.
A estrutura do projeto ficará parecida com a imagem abaixo:



3. Passo: Agora vamos criar a Entidade (Classe) Usuário, que será nosso modelo, para não digitarmos a Classe na unha, iremos importar a mesma do Banco. Clique com o botão direito do mouse sobre o módulo EJB, e escolha Entity Classes from DataBase, conforme a figura abaixo:



4. Passo: Escolha um Data Source que use o MySQL e o nosso Banco de Dados que foi criado, caso não exista um, basta criar um novo DS, depois de escolhido o DS, adicionar a tabela Usuario, clique em Next, conforme mostra a imagem abaixo:



5. Passo: Informe o nome do pacote, no exemplo deixei como loginservice, depois clique em Next.



6. Passo: Na configuração do mapeamento da Entidade, configurar de acordo com a figura abaixo, depois, clique em Finish:


7. Passo: Será criado a Classe Usuario, com todas Annotations, conforme a imagem abaixo:



8. Passo: Agora iremos criar um Session Bean, do tipo Stateless, com o nome de LoginService, implementando uma Interface Local, ambos, no pacote loginservice, crie um método chamado verificarUsuario que retorna um boolean e que tem como parâmetro um Objeto do tipo Usuario na Interface LoginServiceLocal, na Classe LoginService, altera seu código, deixando-o, igual ao da figura abaixo:


Aqui, terminamos nossa primeira parte da Aplicação, deixando a camada de EJB pronta, e na próxima e última parte, iremos terminar, com a criação do Servlet Filter e do ManagedBean.


domingo, 7 de março de 2010

Exemplo de EJB, criando um Session Bean Stateless no Netbeans 6.8 e Glassfish V3.

Olá Pessoal,


Neste post, iremos criar uma simples aplicação EJB3, para quem não sabe, EJB3 é uma plataforma para a construção de aplicações corporativas portável, que permite o desenvolvimento de componentes reutilizáveis, há 3 tipos de componentes EJB, (Session Beans que pode ser Stateless ou Statefull, Message Driven e Entidades) para este exemplo iremos fazer um exemplo de Bean de Sessão sem estado,.
Session Bean Stateless pode ser usado para implementar a lógica corporativa em uma aplicação, ele pode ser acessado por milhares de clientes, pois não armazenam estado.
Para este exemplo, iremos usar a IDE Netbeans 6.8 e o Servidor Glassfish.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.

1. Passo: Começaremos com a construção do projeto.



2. Passo: Escolha o tipo do projeto, conforme a imagem abaixo.



3. Passo: Informe o nome do projeto e onde o mesmo será salvo.



4. Passo: Na tela seguinte, escolha o servidor Glassfish v3, conforme a imagem abaixo, por fim, clique em Finalizar.



5. Passo: Clique com o botão direito do mouse, sobre o módulo EJB -> Novo -> Bean Sessão, conforme a imagem abaixo.




6. Passo: Na tela seguinte, informe o nome do EJB, seu pacote, o tipo de sessão e escolha a Interface Local, conforme a imagem abaixo.



7. Passo: Com a Classe CalcularIPI aberta, clique com o botão direito do mouse -> Insere código, conforme a imagem abaixo.



8. Passo: Agora escolha -> Adicionar método de negócio, conforme a imagem abaixo.



9. Passo: Agora, informe o nome do método, o tipo de retorno e os parâmetros, conforme a imagem abaixo, por fim, clique em OK.



10. Passo: Foi criado uma Interface Local.



11. Passo: Altera o conteúdo da Classe CalcularIPI, conforme a imagem abaixo.



12. Passo: Para testamos nosso Session Bean, iremos criar um Servlet, para isto, clique com o botão direito no módulo web, conforme a imagem abaixo.



13. Passo: Na tela seguinte, informe o nome e o pacote do Servlet e depois clique em Finalizar, conforme a imagem abaixo.



14. Passo: Com o Servlet aberto, clique com o botão direito do mouse sobre o código, conforme a imagem abaixo.



15. Passo: Escolha -> Chamar Enterprise Bean, conforme a imagem abaixo.



16. Passo: Escolha o EJB CalcularIPI, conforme a imagem abaixo.



17. Passo: Com o Servlet aberto, altera o código, conforme a imagem abaixo.



18. Passo: Clique com o botão direito sobre o módulo EJB -> Implantar.



19. Passo: Clique com o botão direito sobre o módulo Web -> Implantar.



20. Passo: Clique com o botão direito sobre o módulo Web -> Executar.



21. Passo: Agora para testar o exemplo, informe o nome do Servlet, na barra de endereço de seu navegador, conforme a imagem abaixo.

Terminamos, o nosso exemplo de Bean de Sessão sem estado, que foi um criado um simples método, que calcula o valor do produto + o valor do IPI, retornando o valor total do produto.
Para quem quiser baixar o projeto, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico a disposição.

CRUD com JSF e Hibernate usando Eclipse, TomCat e MySQL (Parte 3)

Olá Pessoal,


Chegamos na última parte numa série de três partes, que envolveu o desenvolvimento de um CRUD de Usuário. Nas partes anteriores, configuramos o TomCat no Eclipse, criamos o projeto do tipo web, e desenvolvemos e testamos nossa camada de persistência.
Por fim, iremos criar a camada de apresentação, que será desenvolvida pelo Framework JSF.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.

1. Passo: Abre o arquivo faces-config.xml, e selecione a aba ManagedBean -> session -> add.



2. Passo: Na tela seguinte, deixar, conforme a imagem abaixo.



3. Passo: Na próxima tela, informar o nome do ManagedBean e do Pacote, conforme a imagem abaixo.



4. Passo: Na tela seguinte, informe o nome e o escopo do ManagedBean, conforme a imagem abaixo, e depois clica em finish.



5. Passo: O arquivo faces-config.xml, deverá estar, conforme a imagem abaixo.



6. Passo: O arquivo web.xml, deverá estar, conforme a imagem abaixo.



7. Passo: Agora, iremos implementar a Classe UsuarioMB, conforme a imagem abaixo, restante do código, será mostrado nas imagens seguinte.



8. Passo: Continuado, acrescentar o seguinte código na Classe UsuarioMB, conforme a imagem abaixo.



9. Passo: Por fim, acrescentar o seguinte código na Classe UsuarioMB, conforme a imagem abaixo.



10. Passo: Agora criaremos o único arquivo jsp.



11. Passo: Na tela seguinte, informe o nome da página jsp.



12. Passo: Na tela seguinte, informe o template do tipo JSF, conforme a abaixo, e clica em finish.


13. Passo: Na página usuario.jsp, deixar conforme a imagem abaixo, o restante do código será mostrado nas imagens seguintes.



14. Passo: Na página usuario.jsp, acrescenta o código seguinte, conforme a imagem.



15. Passo: Por fim, na página usuario.jsp, acrescenta o código seguinte, conforme a imagem.



16. Passo: Assim, terminamos nossa aplicação, agora iremos testar.



17. Passo: Na tela seguinte, escolha o server TomCat e clica em Finish.



18. Passo: Agora, na barra de endereço informe a URL da nossa aplicação e clica para ir, se tudo ocorrer certo, será aberto a seguinte.


19. Passo: Agora, só testar aplicação, irei cadastrar um novo usuário, conforme a imagem abaixo.



20. Passo: Após ter cadastrados alguns usuários, já podemos ve-lôs, na table.



21. Passo: Podemos excluir um usuário.



Sendo assim, terminamos nossa aplicação, que envolveu, o uso das melhores tecnologias do mercado. Através do Hibernate, conseguimos trabalhar com objetos e sem a necessidade de ficar digitando SQL, e também o JSF que é um Framework MVC que vem crescendo no mercado, por oferecer uma produtividade incrível.
Quem quiser baixar o projeto completo, clica aqui.
Qualquer sugestão, dúvida ou crítica, ficarei a disposição.


Jabes Felipe RSS Feed Jabes Felipe