O documento resume o 4o Encontro Mensal do Gojava sobre JavaServer Faces 2.0. Foi apresentado por Filipe Portes e Frederico Maia e abordou as principais novidades da especificação JSF 2.0 como suporte nativo a Ajax, uso de anotações no lugar de configurações XML, e a utilização de componentes Primefaces para construção de interfaces ricas.
3. Apresentação 3 Frederico Maia Arantes @fredmaia Programador Java EE - PC Sistemas (Inovação) Instrutor Java - Supera Tecnologia Oracle Certified Professional, Java SE 6 (OCJP) Membro e entusiasta do Gojava e Gogtug Artigo publicado na Easy Java Magazine 6 Fundador do blog http://devsexperts.com
5. O que abordaremos? 5 JavaServer Faces 2 e Primefaces no Java EE 6 Outros conceitos podem ser abordados em próximos encontros do Gojava.
6. O que é o JSF? 6 JavaServer Faces (JSF) é uma especificação técnica do JCP com o objetivo de padronizar um framework para desenvolvimento da camada de apresentação em aplicações web; Baseado no padrão MVC; Interfaces baseadas em componentes, semelhante ao Swing;
7. Vale a pena aprender JSF? 7 Especificação desde o Java EE 5; Comunidade ativa e muitos materiais de estudo; Exige pouco conhecimento inicial para construção de interfaces; Integração com JPA, EJB, Spring; Capacidades interativas com AJAX. Encapsula o HTML, CSS e Javascript;
9. JSF 1.x, 1.2 9 Complexidade para criação de componentes; Não tem requisições GET apenas POST, URL’s nada amigáveis; Não tem suporte a Ajax nativo, é necessário configuração para utilizar de terceiros; Permite uso de JSP, scriptlets (código java na sua página web, coisa de 1990); Configurações baseadas em XML;
10. Novidades do JSF 2.0 10 Suporte nativo a Ajax e Annotations; Templates baseados no facelets; Componentes UI com xhtml; Navegação implícita e condicional; Melhorias no mecanismo de eventos; Suporte a requisição via GET, novos escopos; Primefaces 2 e 3, Richfaces 4, IceFaces;
11. Páginas no JSF 2.0 11 Declaração mais simples de páginas web; Suporte nativo a XHTML, recursos e AJAX; Mais eventos, facilitando ações como inicialização de página, tratamento pré e pós-validação, inicialização de aplicação; Suporte à instrução HTTP GET, permitindo usar páginas JSF como favoritos em navegadores; Integração com a nova especificação Bean Validation, facilitando a validação de JavaBeans;
12. XHTML no lugar do JSP 12 JSP era a tecnologia padrão de Java para Web, inclusive no JSF 1.x; Vários conceitos de JSF não são suportados por JSP, e conceitos do JSP se tornam desnecessários para JSF. Um exemplo: a necessidade de tradução e compilação dos arquivos JSP. Faz sentido para os JSPs, mas não para o JSF que apenas pretende representar uma árvore de componentes.
14. Suporte a Ajax 14 Inspirado em ADF Faces, Richfaces, Icefaces; Javascriptajax API; Suporte à tag <f:ajax>; <h:commandButton id=“btnDeletar” action=“#{contatoBean.deletar}”> <f:ajaxupdate=“listaContatos /> </h:commandButton>
15. FacesConfig não mais! (?) 15 O suporte a anotações faz com que na maioria das vezes não seja necessário ter o arquivo faces-config.xml. Apenas para algumas exceções como messagebundle;
18. JSF 2.0 na prática 18 Aplicação de Exemplo no NetBeans
19. Primefaces 19 Mais de 100 componentes! Baseado no JQuery; Ajax nativo baseado no padrão do JSF 2.0; Leve, 1 JAR, nenhuma configuração e nenhuma dependência; Componentes web para mobile (Iphone, Android, Palm, BB...); Mais de 30 temas customizáveis; Suporte ao Google App Engine;
20. Primefaces na prática 20 Vídeo do Primefaces e demonstrações http://www.primefaces.org/ Configurações e aplicação na prática