Bom dia Pessoal,
Estou com algumas dúvidas sobre JSF, até hoje já utilizei para programação web Mentawai e VRaptor.
Pelo que eu entendi a Sun tem uma implementação que está na versão 1.2 mas existem implementações de terceiros tais como:
:arrow: MyFaces(Apache)
:arrow: RichFaces (JBoss)
:arrow: Ajax4jsf
- Qual dessa implementações usar?
Percebi que o projeto MyFaces possui ainda Tomahawk , SandBox, Tobago, etc.
-
O que vem a ser isso?
-
Podem ser utilizados no mesmo projeto?
-
Qual servidor de aplicações devo utilizar?
-
Quais versões da api Servlet e JSP devo utilizar?
-
Quais plugins são interessantes para utilizar no Eclipse?
-
Para o uso de templates o que utilizar? (Tiles, JSP, Facelets)
E para finalizar qual livro adquirir para se aprofundar em JSF?
Obrigado
[ ]'s
Como você disse bem, JSF é uma especificação. Qualquer um pode implementar essa especificação e utilizar.
A Sun possui a sua conhecida como RI (Reference Implementation), a Apache tem o MyFaces. Ainda existem outras como da Oracle e o IceFaces.
A idéia do JSF é componentização, então existem projetos separados específicos para componentização, dentre eles se destacam o Tomahawk, RichFaces e Sandbox.
O Ajax4JSF é um projeto que hoje está em conjunto com o Richfaces e que possibilita o uso de Ajax em JSF de uma forma simples.
Você pode utilizar os componentes em conjunto, por exemplo: JSF RI + Tomahawk + RichFaces + Ajax4JSF. Porém você tem que se atentar as versões compatíveis (se eu não me engano, o Tomahawk só funciona com a especificação 1.1).
Sobre livros, procure no google que já foram citados, assim como alguns tutoriais na web.
Bons estudos
O Tomahawk, SandBox e etc são mais Componentes
O MyFaces é uma implementação como o Sun RI
Mas eu prefiro o Sun RI
O RichFaces é como o Tomahawk são mais componentes ricos para a internet
O Ajax4Jsf é um modo de adicionar o suporte AJAX para componentes JSF
No meu caso eu uso Sun RI 1.2 implementação e RichFaces + Ajax4Jsf
Eu estou tendo vários problemas com o Tomahawk.
Uso o SUN-RI 1.2, não sei se é por esse motivo…
Pelo menos o jsCookMenu está funcionando bem, ele te permite fazer um menu dinâmico e já vêm com alguns templates.