jsf 2 components justjava2011
DESCRIPTION
Apresentação do JustJava2011 sobre suítes de componentes para JavaServer Faces2TRANSCRIPT
Globalcode – Open4education
Eder Magalhães [email protected]
twitter.com/edermag
Discussão sobre adoção de suíte de componentes
Globalcode – Open4education
Agenda
! Sobre JavaServer Faces; ! Especificação; ! Limitações; ! Situação das suítes e extensões em relação a JSF2; ! Estratégia para aplicativos desenvolvidos com JSF; ! Links e twitters
Globalcode – Open4education
Sobre o JavaServer Faces
! Framework MVC Java baseado em UI Component; ! Templates e Composite Components (Facelets); ! Ajax Nativo; ! Configuração via anotações; ! Navegação implícita; ! Bookmarkable / Requisição GET; ! Várias opções de escopo; ! Suporte a Bean Validation;
Globalcode – Open4education
Especificação
JavaServer Faces Java EE Quando JSF 1.2 – JSR 127 5.0 05/2001 JSF 2.1 – JSR 314 6.0 06/2007 JSF 2.2 – JSR 344 6.0 03/2011
Globalcode – Open4education
Relembrando: JSF 1.x
! Não suportava Ajax nativo; ! Gestão de escopo limitada; ! Sem suporte a GET; ! Customização de componentes UI relativamente complexa; ! Configuração somente através de XML; ! Praticamente impossível desenvolver uma app utilizando o JSF 1.x “puro”;
Globalcode – Open4education
Extensões / Suíte de Componentes
! Tornando o JSF uma opção mais interessante; ! Várias funcionalidades do JSF 2 surgiram de:
e muitos outros...
Globalcode – Open4education
JSF 2 versus Suíte de Componentes
! No JSF 2 ainda é necessário utilizar uma suíte?
! Algumas limitações da especificação: ! Componentes UI ainda são rústicos; ! Poucas opções de Componentes UI; ! Não define componente de tema/skin; ! Modelo de requisição Ajax é bem simples; ! Não disponibiliza tratamento nativo para Flow;
Globalcode – Open4education
E lá se foram 1 ano e 1/2...
Hoje, qual é a situação das Suítes de
Componentes e Extensões JSF?
http://www.jsfmatrix.net/
Renascido!
Globalcode – Open4education
! PrimeFaces é a suíte mais “popular” para JSF 2; ! Pioneiro em JSF 2 (02/2010); ! + de 100 componentes; ! Adere ao Ajax nativo do JSF 2; ! Agrega funcionalidades ao fluxo Ajax do JSF; ! Instalação extremamente simples (um jar); ! Disponibiliza vários Temas (Skin) com a possibilidade de customização;
versão atual: 2.2.1
Globalcode – Open4education
! PrimeFaces é fácil de usar; ! Rápido; ! Comunidade de usuários crescente; ! Mobile TouchFaces; ! Utiliza JQuery; ! Roda no Google App Engine e Amazon EC2; ! Open Source e livre sob a licença Apache 2; ! Documentação é paga (9,90 Euros);
http://www.primefaces.org/showcase/ui/home.jsf
Globalcode – Open4education
! RichFaces é a suíte mais famosa para JSF 1.*; ! Recentemente foi lançada a versão para JSF 2: ! 4.0.0 Final Release em 03/2011 ! Projeto foi reconstruído para suportar JSF 2;
! Instalação simplificada; ! JavaScript através de JQuery; ! Suporte via JBoss Tools;
Globalcode – Open4education
! RichFaces 4.0.0 disponibiliza: ! Componentes UI (a4j + rich + JavaScript API) ! Otimiza o fluxo Ajax nativo do JSF; ! Skins ! Bean Validation (JSR 303) no lado cliente; ! Push com integração em JMS; ! CDK – Component Development Kit;
! Roda no Google App Engine e no Amazon EC2;
http://richfaces-showcase.appspot.com
Globalcode – Open4education
! Seam Faces 3.0.0 Snapshot
! Implementa o modelo CDI para JSF 2; ! @RenderScoped; ! Melhora a criação de Mensagens; ! Componentes UI; ! Propagação de eventos;
Globalcode – Open4education
! ICEfaces 2.0.0 compátivel com JSF 2: ! Direct-to-Dom Rendering (D2D); ! Ajax Push ! Window Scope ! Implementa vários componentes UI; ! Versão Comercial para componentes classificados como “Enterprise”; ! Disponibiliza uma API para JavaScript;
http://component-showcase.icefaces.org/component-showcase/showcase.iface
Globalcode – Open4education
! MyFaces suporta JSF 2: ! Core JSF 2.0 – outra alternativa para Mojarra; ! Trinidad; ! Orchestra; ! Tomahawk; ! CODI – Extensions CDI Project; ! ExtVal – Extensions Validator;
Globalcode – Open4education
ScrumToys: a cobaia!
! Demo: RichFaces + PrimeFaces juntos!
Globalcode – Open4education
JavaServer Faces
Service
Persistence
Model
Estratégia para aplicativos JSF
+ + …
Globalcode – Open4education
Algumas referências ! http://jcp.org/en/jsr/detail?id=344 ! http://www.primefaces.org/ ! http://cagataycivici.wordpress.com/ ! http://www.jboss.org/richfaces ! http://in.relation.to/Bloggers/GettingStartedWithRichFaces40Push ! http://docs.jboss.org/richfaces/latest_4_0_X/Developer_Guide/en-US/html/ ! http://seamframework.org/Seam3/FacesModule ! http://docs.jboss.org/seam/3/faces/latest/reference/en-US/html/pr01.html ! http://wiki.icefaces.org/display/ICE/ICEfaces+2+Features ! http://myfaces.apache.org/index.html ! http://blog.globalcode.com.br/search/label/JSF ! http://mkblog.exadel.com/
Globalcode – Open4education
Follow @edburns @maxkatz @cagataycivici @kito99 @jasondlee @richfaces @primefaces @jbossseam @icefaces