Primeiro Projeto em JSF2 e PrimeFaces

Pessoal,

Já desenvolvi alguns sites em PHP e em Flex4. Estou iniciando em JSF2 e Primefaces, pois tive algumas boas recomendações destas tecnologia tanto por amigos tanto pelas buscas que fiz na web, porém estou sem saber como iniciar uma aplicação com estas tecnologia, tipo a tela de login e menu principal. Algumas de minhas duvidas é com fazer a página de login, menu e como controlar se o usuário esta logado. No flex por exemplo eu colocava as informações de autenticação de login do usuário na sessão do servidor TonCat e outra que com Flex era apenas um endereço URL. No PHP eu controlava postando as informações de login na sessão do servidor apache e toda vez q ia abrir uma URL verificava se a sessão estava autenticada.

Para fazer esse controle de autenticação de usuário é necessário de mais alguma tecnologia fora o JSF2 e o Primefaces ?

O meu back-end é em Java, Hibernate 3 com toncat 7. Eu fiz umas adaptações do projeto (java) que eu tenho e funciona com o Flex, ou seja tenho as classes na facade para serem requeridas pelo font-end JSF e PrimeFaces.

Encontrei um post (http://uaihebert.com/?p=1414) que tem uma aplicação completa, mas achei muito complexo, gostaria alguma coisa mais simples ou realmente é necessário ser forma que esta no post ? Digo isso pois no PHP e no Flex é bem simples esse processo e não tive o trauma que estou tendo agora.

Gostaria da ajuda de vocês.

[quote=getulio.gomes]Pessoal,

Já desenvolvi alguns sites em PHP e em Flex4. Estou iniciando em JSF2 e Primefaces, pois tive algumas boas recomendações destas tecnologia tanto por amigos tanto pelas buscas que fiz na web, porém estou sem saber como iniciar uma aplicação com estas tecnologia, tipo a tela de login e menu principal. Algumas de minhas duvidas é com fazer a página de login, menu e como controlar se o usuário esta logado. No flex por exemplo eu colocava as informações de autenticação de login do usuário na sessão do servidor TonCat e outra que com Flex era apenas um endereço URL. No PHP eu controlava postando as informações de login na sessão do servidor apache e toda vez q ia abrir uma URL verificava se a sessão estava autenticada.

Para fazer esse controle de autenticação de usuário é necessário de mais alguma tecnologia fora o JSF2 e o Primefaces ?

O meu back-end é em Java, Hibernate 3 com toncat 7. Eu fiz umas adaptações do projeto (java) que eu tenho e funciona com o Flex, ou seja tenho as classes na facade para serem requeridas pelo font-end JSF e PrimeFaces.

Encontrei um post (http://uaihebert.com/?p=1414) que tem uma aplicação completa, mas achei muito complexo, gostaria alguma coisa mais simples ou realmente é necessário ser forma que esta no post ? Digo isso pois no PHP e no Flex é bem simples esse processo e não tive o trauma que estou tendo agora.

Gostaria da ajuda de vocês.[/quote]
Esse site é muito bom e completo, você vai voltar nele depois que se sentir seguro com o básico da tecnologia, então procure algo mais simples primeiro e depois volte no uaihebert para melhor referência. Geralmente ganhamos confiança em uma nova tecnologia quando fazemos um CRUD bem simples, então procure algo como isso: http://jamacedo.wordpress.com/2010/06/08/crud-jsf-2-0-hibernate-exemplo-gerenciando-livros-2/. Depois disso você vai estar mais familiarizado e conseguindo pesquisar o resto com mais naturalidade, aprendendo uma coisa de cada vez pra não embolar.



http://jamacedo.com/2011/01/crud-jsf-2-parte-3-seguna-com-spring-security-3/ (Aqui tem a parte de autenticação)

No mais, pode achar mais coisas: https://www.google.com.br/search?q=autenticacao+JSF+2.0

E sobre a parte visual, você vê direto o exemplo no site do primefaces, onde os exemplos possuem códigos:
http://www.primefaces.org/showcase/ui/menu.jsf
http://www.primefaces.org/showcase/ui/dialogLogin.jsf

Realmente esse post aí tem tudo.

Você poderia usar apenas a parte do login.

Que é um filter, a página e a configuração no web.xml

Obrigado a todos, pela ajuda…

Os links e as respotas foram de muito aproveito. Hebert, teu blog é muito bom e já esta na lista dos meus favoritos, porém eu não queria usar nada de FrameWork, tipo Spring, ou algo parecido. Pelo que li entra as respostas me parece que a forma mais simples de fazer seria usando Filter. vou seguir o concelho que foi dado em uma das respostas que tive, que era de fazer um CRUD, para ficar mais familarizado com as tecnologias e não sentir tanto o paradigma de mudança.

Vou passar aqui a forma como os meus sistemas funcionam em PHP e em Flex (Login e Menu), pode ser que sirva de ajuda ou dê alguma contribuição: Em ambus as tecnologia, a tela de login possui 3 campos (Registro, Usuario, e Senha). Todas as 3 informações são gravadas na sessão que o usuário esta abrindo quando acessa a URL, no PHP (apache), no Flex (Toncat). A informação Registro, indica em qual base de dados será realizada a conexão, as demais informações serve como meio de autenticação (usuário e senha). no PHP quando é acessada alguma URL do aplicativo é verificado na sessão se a veriável de autenticação esta OK, caso negativo é direcionado para a tela de login. No Flex é quase a mesma coisa, só que este dados são gravados e consultados na sessão do tomcat. Esta foi a forma que eu encontrei de fazer meus aplicativos (a mesma URL) servir a vários clientes.

Se existir alguma outra formar de servir (a mesma URL) a vários clientes, favor gostaria de sabe.

Desde de já agradeço a todos pela atenção.