
dsbonafe
(usa Fedora)
Enviado em 07/06/2011 - 11:53h
Olá senhores...
Estou tentando implementar um projeto de modelo de site empresarial (o qual pretendo abrir o código tb. pra ajudar a comunidade) para mostrar amanhã num evento de Software Livre que está ocorrendo em minha Universidade, usando apenas ferramentas OpenSource.
A proposta é um desafio de um professor para duas matérias que ministra. Mas estou querendo fazer algo a mais, todavia não estou conseguindo fazer uma tela de login funcional. Já busquei vários modelos no guj, mas ainda não encontrei o que eu queria.
Vou explicar meu problema e espero que consigam entender porque é meio confuso. hehe
# Primeiramente, o modelo que não posso alterar:
- Tenho uma classe Empresa. Dela herdam as empresas: EFornecedora, Transportadora, Receptora e, com isso, os atributos: cnpj (primary key), login e password.
- Tenho uma classe Pessoa. Dela herdam Catadora e Fornecedora. Somente Fornecedora loga pelo site. Possui como atributos nome (primary key), login e password;
- Criei uma Fábrica de DAO's e uma Fábrica de Beans dessas classes que já estão fazendo insert, find, update e delete do banco (Postgre no caso); Ou seja, está funcionando perfeitamente.
- Criei um LoginBean que transcrevo mais afrente na pergunta. Este posso alterar, pois criei em função dos tutoriais da net. Todos os Beans são @RequestScope. E o projeto não funciona se colocar @SessionScope por algum motivo obscuro que não terei tempo para resolver. hehe
#O que eu gostaria de fazer:
- Criar uma tela de login funcional que não permita que outra pessoa invada o site simplesmente sabendo a url. E como fazer o logout.
- Usar RichFaces ou PrimeFaces nesta página ao invés de JSF puro.
OBS.: todas as páginas estão em .jsf, porém está dando pau a lib do PrimeFaces no @taglib, mesmo baixando a nova versão da biblioteca do site. Site, aliás, cujos exemplos estão quase todos desatualizados e não funcionam direito. Então tentei com o RichFaces, mas até agora nada tb.
//-------------------------- LOGIN BEAN --------------------------------------------------
public class LoginBean {
private EntityManager em = FonteDados.createEntityManager();
private GenericDao<EmpresaFornecedora> daoEmpresaFornecedora = new GenericDao<EmpresaFornecedora> (em);
private GenericDao<Transportadora> daoTransportadora = new GenericDao<Transportadora> (em);
private GenericDao<Recicladora> daoRecicladora = new GenericDao<Recicladora> (em);
private GenericDao<Catadora> daoCatadora = new GenericDao<Catadora> (em) ;
private GenericDao<Fornecedora> daoFornecedora = new GenericDao<Fornecedora>(em);
private EmpresaFornecedora empresaFornecedora = new EmpresaFornecedora();
private Transportadora transportadora = new Transportadora();
private Recicladora recicladora = new Recicladora();
private Catadora catadora = new Catadora();
private Fornecedora fornecedora = new Fornecedora();
private int cnpj_usr;
private String nome_usr;
private String pwd;
private String tipoEmpresa;
private boolean safty;
/** Creates a new instance of LoginBean */
public LoginBean() {
safty = false;
}
// GET'S E SET'S
}
Está bem em cima da hora, mas mesmo depois do evento essa resposta ainda será útil. hehe
Abraço a todos.