FACULDADE DE TECNOLOGIA SENAC GOIÁS
CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES
5º PERÍODO – Gestão da Tecnologia da Informação
Alunos: Alessandro Aparecido
André Alexandre
Bruno Santiago
Thiago Castilho
GOIÂNIA
2014-1
Sumário
1.
O Projeto .....................................................................................................................................................3
2.
Desenvolvendo o Projeto ..............................................................................................................................3
3.
Configuração do Servidor ..............................................................................................................................3
4.
Configurando o uso do Framework RichFaces ................................................................................................5
5.
Banco de Dados ...........................................................................................................................................6
6.
Controle de Acesso .......................................................................................................................................7
7.
Referências ................................................................................................................................................ 13
1. O Projeto
Aplicações web são constituídas, normalmente, de recursos e funcionalidades públicos, acessíveis a
toda pessoa em contato com a Internet, e outros protegidos por níveis específicos de acesso. É muito
comum vermos, em portais pela web, áreas restritas para candidatos em treinamento, funcionários,
professores, administradores de sistemas, exibidas apenas mediante o fornecimento de credenciais com
nível de acesso compatível com aquele previamente cadastrado em sistemas de informação relacionados.
Outro comportamento muito comum em sistemas web é a exibição de determinadas informações sobre as
quais o leque de operações permitidas varia de acordo com o tipo de usuário. Para exemplificar, imagine
um sistema hipotético de controle de produtos: enquanto estoquistas possuem um perfil que os permite
digitar as informações dos produtos, os vendedores possuem um perfil um pouco mais restrito, que só os
dá acesso à visualização dos produtos a serem vendidos. Embora a informação (produto) seja visível para
ambos os perfis de usuário (estoquistas e vendedores), o escopo de atuação sobre ela varia
sensivelmente.
2. Desenvolvendo o Projeto
Desenvolver um sistema de controle de acesso utilizando os Frameworks apresentados na
disciplina.
Para esse projeto serão usados:
- Eclipse como IDE de desenvolvimento.
- PostgreSQL como Sistema Gerenciador de Banco de Dados (SGBD).
- Hibernate como framework para o mapeamento objeto-relacional.
- JPA como especificação para a persistência de dados
- RichFaces como framework, sendo ele uma biblioteca de componentes para aplicações web
que utilizam JSF.
3. Configuração do Servidor
Passo 01: Crie uma nova pasta com o nome de Servidores na unidade C:\de seu computador, faça
o download do Servidor de Aplicações GlassFish, e salve-o nessa pasta.
Passo 02: Faça a descompactação do arquivo glassfish-4.0.zip, no processo de descompactação o
diretório glassfish4 deve ser criado. Observe dentro desse diretório a existência de um diretório com o
nome de glassfish (diretório onde se encontra os arquivos do servidor de aplicações GlassFish).
Passo 03: Abrir a IDE Eclipse (Versão Kleper JEE), definir o espaço de trabalho na
janela Workspace Launcher. Sendo esse espaço de trabalho o diretório onde os projetos serão
armazenados.
Passo 04: Com a janela da IDE Eclipse aberta, clique na guia Server e no link No servers are
available. Click this link to create a new server... . Caso a guia Server não esteja visível vá ao
menu Windows --> Show View --> Servers.
Passo 05: Para adicionar um novo adaptador para o servidor de aplicações GlassFish, na
janela New Server, clique no link Download additional Server adapters.
Passo 06: Na janela Install new Extension, aguarde até que a lista de adaptadores seja carregada,
selecione o adaptador GlassFish Tools e clique no botão Next.
Passo 07: Na janela Install new Extension, leia a licença de uso do adaptador e caso concorde
clique na opção Accept the terms of the licence agreement e clique no botão Finish.
Passo 08: Na janela de opções Install new Extension clique no botão OK.
Passo 09: Observe o download dos plugins necessários ao adaptador na janela Installig GlassFish
Tools.
Passo 10: Na janela Software Updates clique no botão Yes.
Passo 11: Aguarde que a IDE Eclipse seja reinicializada.
Passo 12: Com a janela da IDE Eclipse aberta, clique na guia Server e no link No servers are
available. Click this link to create a new server... . Caso a guia Server não esteja visível vá ao
menu Windows --> Show View --> Servers.
Passo 13: Na janela New Server, observe que aparece um novo tipo de adaptador para o
servidor GlassFish, que acabamos de instalar, clique na seta em frente a pasta GlassFish e escolha a
opção GlassFish 4.0 clique no botão Next.
Passo 14: Na janela New Server, observe a mensagem Glassfish server runtime requires full JDK
instead of JRE, clique no link Installed JRE preferences.
Passo 15: Na janela Preferences (Installed JREs), clique no botão Add.
Passo 16: Na janela Add JRE, selecione o tipo de JRE instalado (Installed JRE Types), no caso
escolha Standard VM e clique no botão Next.
Passo 17: Na janela Add JRE defina as opções da JRE, ou seja, defina o diretório onde o JDK (Kit de
Desenvolvimento Java) está instalado, para isso clique no botão Directory.
Passo 18: Na janela Procurar Pasta, procure pelo diretório onde o JDK está instalado, selecione o
diretório e clique no botão OK.
Passo 19: Na janela Add JRE, observe as alterações, principalmente o campoJRE Name e clique no
botão Finish.
Passo 20: Na janela Preferences, selecione a JRE recém configurada, e clique no botão OK.
Passo 21: Na janela New Server, escolha a JRE recém configurada no combo box JDK, no
campo GlassFish Server Directory, defina o diretório onde o GlassFish Server está instalado, para isso
clique no botão Browser.
Passo 22: Na janela Procurar Pasta, procure pelo diretório onde oGlassFish Server está instalado,
selecione o diretório glassfish e clique no botão OK.
Passo 23: Na janela New Server, observe a mensagem Found GlassFish Server version 4.0.0 e
clique no botão Next.
Passo 24: Na janela New Server (GlassFish Application Server) clique no botão Next.
Passo 25: Na janela New Server (Add and Remove) clique no botão Finish.
Passo 26: Observe na guia Server o servidor de aplicações GlassFish 4.0.
Passo 27: Para iniciar o servidor GlassFish, na guia Server, dê um clique com o botão inverso do
mouse sobre o servidor glassfish (GlassFish 4.0 at localhost [Stopped]) e escolha a opção Start. Observe
que a guia Console e exibida com informações sobre o startup do servidor, e na parte inferior direita do
Eclipse e mostrada a porcentagem do processo de inicialização do servidor. Se tudo ocorrer bem observe
que o status do servidor e alterado de[Stopped] para [Started, Synchornized].
Passo 28: Para testar o servidor GlassFish, abra um navegador e digite o
endereço: http://localhost:8080. Observe que a tela principal do GlassFishcom a mensagem Your server is
now running.
Passo 29: Para parar o servidor GlassFish, na guia Server, dê um clique com o botão inverso do
mouse sobre o servidor glassfish (GlassFish 4.0 at localhost [Started, Synchornized]) e escolha a
opção Stop. Observe a parte inferior direita do Eclipse e mostrada a porcentagem do processo de
finalização do servidor. Se tudo ocorrer bem observe que o status do servidor e alterado de [Started,
Synchornized] para [Stopped, Synchornized].
4. Configurando o uso do Framework RichFaces
RichFaces é uma biblioteca de componentes para aplicações web que utilizam o framework JSF. Os
componentes desta biblioteca possuem um incrível suporte AJAX, e ela, pode ser considerada uma
extensão do Ajax4jsf com inúmeros componentes com Ajax “embutido” e com um suporte a Skins que
podem deixar as interfaces da sua aplicação com um visual padronizado.
Instalação
Baixar o RichFaces http://labs.jboss.com/jbossrichfaces
Descompacte os arquivos
richfaces-api-3.3.1.GA.jar
richfaces-impl-3.3.1.GA.jar
richfaces-ui-3.3.1.GA.jar
na pasta WEB-INF/lib do seu projeto
Registrando no web.xml
Adicione as seguintes linhas no seu arquivo web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>ControleAcesso</display-name>
<welcome-file-list>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
<context-param>
<param-name>org.richfaces.skin</param-name>
<param-value>blueSky</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.enableControlSkinning</param-name>
<param-value>true</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
</web-app>
5. Banco de Dados
Persistence.xml
O arquivo persistence.xml encontra-se no diretório:
ControleAcesso/src/META-INF/persistence.xml
Classe JPAUtil
A classe se encontra no diretório:
ControleAcesso/src/br/com/projeto/útil/JPAUtil.java
Banco de Dados:
Tabelas:
6. Controle de Acesso
O sistema realiza a validação do acesso do usuário, e se este possui privilégios para inserir e alterar os dados do sistema.
Tela de erro caso senha e login errados
Tela se usuário tem perfil administrador
Tela de Cadastro de Usuários apenas para Administradores
Listagem de Produtos somente para usuário com perfil não administrador.
Visão do Projeto ControleAcesso
Classe com as funcionalidades para Produto
Classe com as funcionalidades para Usuário
Página Administrador
7. Referências
http://richfaces.jboss.org/
http://www.devmedia.com.br/conhecendo-o-richfaces-parte-i/6440
http://pt.scribd.com/doc/164634854/JSF-Controle-de-Sessoes-e-Controle-de-Acesso-pdf
Download

baixar documento