jsf 2 e primefaces - 4º encontro mensal do gojava
DESCRIPTION
Pequena apresentação sobre novidades do JSF 2 e Primefaces, criada para nos guiar no 4º Encontro Mensal do Gojava, realizado na Supera Tecnologia.TRANSCRIPT
![Page 1: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/1.jpg)
4º Encontro Mensal do GojavaJavaServer Faces 2.0
Frederico MaiaFilipe Portes
![Page 2: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/2.jpg)
2
Apresentação
Filipe Portes
![Page 3: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/3.jpg)
3
Apresentação
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
![Page 4: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/4.jpg)
4
Sopa de letrinhas
JEE 6 ? JSF 2 ? JPA 2 ? EJB 3.1 ? Servlets 3? CDI?
![Page 5: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/5.jpg)
5
O que abordaremos?
JavaServer Faces 2 e Primefaces no Java EE 6
Outros conceitos podem ser abordados em próximos encontros do Gojava.
![Page 6: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/6.jpg)
6
O que é o JSF?
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;
![Page 7: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/7.jpg)
7
Vale a pena aprender JSF?
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;
![Page 8: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/8.jpg)
8
Chalenge acepted!
![Page 9: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/9.jpg)
9
JSF 1.x, 1.2
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;
![Page 10: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/10.jpg)
10
Novidades do JSF 2.0
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;
![Page 11: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/11.jpg)
11
Páginas no JSF 2.0
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;
![Page 12: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/12.jpg)
12
XHTML no lugar do JSP
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.
![Page 13: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/13.jpg)
13
Novas anotações
@ManagedBean @ManagedProperty @*Scoped (View, Session, Application,
etc) @FacesConverter @FacesComponent @FacesValidator
![Page 14: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/14.jpg)
14
Suporte a Ajax
Inspirado em ADF Faces, Richfaces, Icefaces;
Javascript ajax API; Suporte à tag <f:ajax>;
<h:commandButton id=“btnDeletar” action=“#{contatoBean.deletar}”>
<f:ajax update=“listaContatos />
</h:commandButton>
![Page 15: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/15.jpg)
15
FacesConfig não mais! (?)
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 message bundle;
![Page 16: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/16.jpg)
16
Componentização fácil!
Não é necessário mais ser um expert em JSF para criar componentes;
![Page 17: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/17.jpg)
17
Navegação
Bookmarkable Pages (GET); Novos componentes <h:link>,
<h:button>; Navegação implícita; Navegação condicional;
![Page 18: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/18.jpg)
18
JSF 2.0 na prática
Aplicação de Exemplo no NetBeans
![Page 19: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/19.jpg)
19
Primefaces
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;
![Page 20: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/20.jpg)
20
Primefaces na prática
Vídeo do Primefaces e demonstrações http://www.primefaces.org/
Configurações e aplicação na prática
![Page 21: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/21.jpg)
21
Tudo entendido?
![Page 22: JSF 2 e Primefaces - 4º Encontro Mensal do Gojava](https://reader033.vdocuments.pub/reader033/viewer/2022061210/54912f6cb47959ab4d8b47f9/html5/thumbnails/22.jpg)
22
Obrigado!
@gojava @SuperaTI
@filipeportes @fredmaia
http://gojava.org http://supera.com.br