SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
RichFaces 4
Desenvolvimento Web com JSF2 mais rico




                          Globalcode	
  –	
  Open4education
Eu

      Eder Magalhães

      eder@yaw.com.br
     twitter.com/edermag




                           Globalcode	
  –	
  Open4education
Agenda


!     Sobre JavaServer Faces;
!     Introdução ao RichFaces;
!     Características do RichFaces;
!     Demonstração de Componentes Visuais;
!     Demonstração da Validação lado cliente;
!     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
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
JSF 1.* puro?


!   Usar um suíte ou extensão de componentes era
praticamente obrigatório!




                                   Globalcode	
  –	
  Open4education
JSF 2 versus Suíte de Componentes

!   Com 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
!   RichFaces é a suíte mais famosa para JSF 1.*;

!   RichFaces 4:
    !   Lançado recentemente com suporte a JSF 2;
    !   Projeto foi reconstruído para suportar JSF 2;




                                             Globalcode	
  –	
  Open4education
JavaScript do RichFaces 4


!   JavaScript gerado é baseado em jQuery!




                                    Globalcode	
  –	
  Open4education
Refactoring

!   Todos os componentes foram revisados:
    !   Usabilidade;
    !   Melhor semântica HTML;
    !   Mais performance em código client-side e server-side;
    !   Código mais limpo;




                                            Globalcode	
  –	
  Open4education
Instalação

!   Só colocar os jars no projeto (libs);
!   Ou configurar os artefatos (Maven);
!   Nenhuma configuração extra via xml;




                                      Globalcode	
  –	
  Open4education
Roda em quais servidores?

!   Tomcat 6 e 7;
!   JBoss AS 6 e 7;
!   Glassfish 3.*;

!   Qualquer servidor com suporte a JSF 2;

!   Cloud: GAE + Amazon EC2 + CloudBees;


                                     Globalcode	
  –	
  Open4education
Mais detalhes sobre o RichFaces

!   UI Components:
    !   a4j: tag lib p/ Ajax;
    !   rich: tag lib p/ componentes visuais;
!   Skin;
!   Validação client-side (Bean Validation);
!   Component Development Kit



                                                Globalcode	
  –	
  Open4education
Alguns Componentes Ajax

!     a4j:ajax
!     a4j:commandButton
!     a4j:commandLink
!     a4j:param

!   a4j:poll
!   a4j:status
!   a4j:region


                          Globalcode	
  –	
  Open4education
Queue para Ajax

!   Organiza as requisições Ajax em telas complexas;
!   Funcionalidades:
    !   requestDelay
    !   requestGrouping
    !   ignoreDupResponses
!   Cria um escopo de fila;
!   Eventos no cliente e API JavaScript;




                                     Globalcode	
  –	
  Open4education
Alguns Componentes UI

!     rich:datatable
!     rich:dataGrid
!     rich:calendar
!     rich:toolTip

!   rich:select
!   rich:list
!   rich:autocomplete


                        Globalcode	
  –	
  Open4education
ScrumToys: a cobaia!



!   Demo: instalação + componentes básicos do
    RichFaces




                                   Globalcode	
  –	
  Open4education
Componentes p/ próximas versões


!     rich:colorPicker
!     rich:editor
!     rich:listShuttle
!     rich:gmap




                         Globalcode	
  –	
  Open4education
Validação lado cliente

!     Utiliza os validadores JSF;
!     Compreende JSR 303;
!     Gera código JavaScript para validar;
!     Suporta validação de múltiplos valores (campos);
!     Agrega valor ao rich:message;




                                       Globalcode	
  –	
  Open4education
ScrumToys: a cobaia, o retorno!



!   Demo: validadores JSF + Bean Validations




                                    Globalcode	
  –	
  Open4education
RichFaces 4 Mobile Development


!   http://bit.ly/mCWTZB




 Post	
  falando	
  sobre	
  o	
  assunto	
  no	
  Jboss	
  World	
  2011	
  Keynote	
  



                                                                                           Globalcode	
  –	
  Open4education
RichFaces 4.1 – coming soon

!     Os fontes migrados para o Git;
!     Novos componentes UI;
!     Integração com Seam-forge;
!     Melhor suporte p/ HTML5 e Mobile;
!     Sandbox e CDK;
!     Bug fixing;


                                   6	
  meses	
  de	
  trabalho…	
  


                                           Globalcode	
  –	
  Open4education
Experimente



! http://richfaces-showcase.appspot.com/




 RichFaces	
  4	
  Showcase	
  



                                   Globalcode	
  –	
  Open4education
Estratégia para aplicativos JSF

                  +	
                   +	
         …	
  
                JavaServer	
  Faces	
  




                                                Model	
  
                          Service	
  

                    Persistence	
  

!   http://bit.ly/oiPSmj

                                                            Globalcode	
  –	
  Open4education
Planejamento p/ JSF


          JavaServer	
  Faces	
               Java	
  EE	
  
          JSF	
  1.2	
  –	
  JSR	
  127	
       5.0	
  
          JSF	
  2.1	
  –	
  JSR	
  314	
       6.0	
  
          JSF	
  2.2	
  –	
  JSR	
  344	
       6.0	
  
                   JSF	
  3	
                   7.0	
  




                                                          Globalcode	
  –	
  Open4education
Algumas referências

!     http://www.jboss.org/richfaces
!     http://bit.ly/RF_Downloads
!     http://bit.ly/RH_Getting_Started
!     http://bit.ly/RF_User_Space
!     http://richfaces-showcase.appspot.com/
!     http://jcp.org/en/jsr/detail?id=344
!     http://blog.globalcode.com.br/search/label/JSF
!     http://mkblog.exadel.com/


                                           Globalcode	
  –	
  Open4education
Follow
  @maxkatz
  @cagataycivici
  @kito99
  @jasondlee
  @edburns
  @richfaces
  @primefaces
  @jbossseam



                   Globalcode	
  –	
  Open4education
Obrigado !

eder@yaw.com.br
   @edermag




              Globalcode	
  –	
  Open4education

Contenu connexe

Tendances

PDC - Engenharia - Phonegap
PDC - Engenharia - PhonegapPDC - Engenharia - Phonegap
PDC - Engenharia - Phonegapslides_teltools
 
Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXjesuinoPower
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOakjesuinoPower
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidBruno Oliveira
 
Introdução Ao Spring Com Spring Boot
Introdução Ao Spring Com Spring BootIntrodução Ao Spring Com Spring Boot
Introdução Ao Spring Com Spring BootAlexandre Rodrigues
 
TDC 2008 Spring Framework
TDC 2008 Spring FrameworkTDC 2008 Spring Framework
TDC 2008 Spring FrameworkDr. Spock
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoPedro Cavalero
 
Descomplicando o Mobile com Ionic Framework
Descomplicando o Mobile com Ionic FrameworkDescomplicando o Mobile com Ionic Framework
Descomplicando o Mobile com Ionic FrameworkYan Borowski Machado
 
Grails: O Java em Alta Produtividade
Grails: O Java em Alta ProdutividadeGrails: O Java em Alta Produtividade
Grails: O Java em Alta ProdutividadeCleórbete Santos
 
Java e o mercado de trabalho
Java e o mercado de trabalhoJava e o mercado de trabalho
Java e o mercado de trabalhoClaudiney Marques
 
Rapida apresentacao sobre o Grails
Rapida apresentacao sobre o GrailsRapida apresentacao sobre o Grails
Rapida apresentacao sobre o GrailsDiego Cavalcanti
 
Conectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPConectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPjesuinoPower
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançadoTargettrust
 
REST - The right way
REST - The right wayREST - The right way
REST - The right waysantosluis87
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFEmmanuel Neri
 
Introdução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações webIntrodução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações webRodrigo Branas
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutosBruno Oliveira
 

Tendances (20)

PDC - Engenharia - Phonegap
PDC - Engenharia - PhonegapPDC - Engenharia - Phonegap
PDC - Engenharia - Phonegap
 
Phonegap
PhonegapPhonegap
Phonegap
 
Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFX
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOak
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em Android
 
Introdução Ao Spring Com Spring Boot
Introdução Ao Spring Com Spring BootIntrodução Ao Spring Com Spring Boot
Introdução Ao Spring Com Spring Boot
 
TDC 2008 Spring Framework
TDC 2008 Spring FrameworkTDC 2008 Spring Framework
TDC 2008 Spring Framework
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalho
 
Descomplicando o Mobile com Ionic Framework
Descomplicando o Mobile com Ionic FrameworkDescomplicando o Mobile com Ionic Framework
Descomplicando o Mobile com Ionic Framework
 
Grails: O Java em Alta Produtividade
Grails: O Java em Alta ProdutividadeGrails: O Java em Alta Produtividade
Grails: O Java em Alta Produtividade
 
Java e o mercado de trabalho
Java e o mercado de trabalhoJava e o mercado de trabalho
Java e o mercado de trabalho
 
Rapida apresentacao sobre o Grails
Rapida apresentacao sobre o GrailsRapida apresentacao sobre o Grails
Rapida apresentacao sobre o Grails
 
Conectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPConectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SP
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançado
 
REST - The right way
REST - The right wayREST - The right way
REST - The right way
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSF
 
Introdução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações webIntrodução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações web
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutos
 
HornetQ - 2.Arquitetura do HornetQ
HornetQ - 2.Arquitetura do HornetQHornetQ - 2.Arquitetura do HornetQ
HornetQ - 2.Arquitetura do HornetQ
 
Framework7
Framework7Framework7
Framework7
 

En vedette

Direito sao bernardo curso de férias - tutelas de urgencia - 110110 - cap 1...
Direito sao bernardo   curso de férias - tutelas de urgencia - 110110 - cap 1...Direito sao bernardo   curso de férias - tutelas de urgencia - 110110 - cap 1...
Direito sao bernardo curso de férias - tutelas de urgencia - 110110 - cap 1...Pedro Kurbhi
 
TWT Weihnachtsaktionen 2012
TWT Weihnachtsaktionen 2012TWT Weihnachtsaktionen 2012
TWT Weihnachtsaktionen 2012TWT
 
RichFaces 4: Rich Ajax Components For Your JSF Applications
RichFaces 4: Rich Ajax Components For Your JSF ApplicationsRichFaces 4: Rich Ajax Components For Your JSF Applications
RichFaces 4: Rich Ajax Components For Your JSF ApplicationsMax Katz
 
Gestão de TI em hospitais
Gestão de TI em hospitaisGestão de TI em hospitais
Gestão de TI em hospitaisRuy Ferreira
 

En vedette (8)

Apresentação
ApresentaçãoApresentação
Apresentação
 
Punk Rock
Punk RockPunk Rock
Punk Rock
 
EscáNer
EscáNerEscáNer
EscáNer
 
Direito sao bernardo curso de férias - tutelas de urgencia - 110110 - cap 1...
Direito sao bernardo   curso de férias - tutelas de urgencia - 110110 - cap 1...Direito sao bernardo   curso de férias - tutelas de urgencia - 110110 - cap 1...
Direito sao bernardo curso de férias - tutelas de urgencia - 110110 - cap 1...
 
TWT Weihnachtsaktionen 2012
TWT Weihnachtsaktionen 2012TWT Weihnachtsaktionen 2012
TWT Weihnachtsaktionen 2012
 
Schweizerisches Bundesgericht - Offene IT-Strategie und Infrastruktur
Schweizerisches Bundesgericht - Offene IT-Strategie und InfrastrukturSchweizerisches Bundesgericht - Offene IT-Strategie und Infrastruktur
Schweizerisches Bundesgericht - Offene IT-Strategie und Infrastruktur
 
RichFaces 4: Rich Ajax Components For Your JSF Applications
RichFaces 4: Rich Ajax Components For Your JSF ApplicationsRichFaces 4: Rich Ajax Components For Your JSF Applications
RichFaces 4: Rich Ajax Components For Your JSF Applications
 
Gestão de TI em hospitais
Gestão de TI em hospitaisGestão de TI em hospitais
Gestão de TI em hospitais
 

Similaire à RichFaces 4 Desenvolvimento Web com JSF2 mais rico

JSF2 c/ PrimeFaces, RichFaces e ICEfaces
JSF2 c/ PrimeFaces, RichFaces e ICEfacesJSF2 c/ PrimeFaces, RichFaces e ICEfaces
JSF2 c/ PrimeFaces, RichFaces e ICEfacesEder Magalhães
 
Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Dr. Spock
 
Arquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App EngineArquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App EngineEder Magalhães
 
JavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingJavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingEder Magalhães
 
Desenvolvimento RIA com GWT e Spring
Desenvolvimento RIA com GWT e SpringDesenvolvimento RIA com GWT e Spring
Desenvolvimento RIA com GWT e SpringEder Magalhães
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesRodrigo Cândido da Silva
 
Java e uma visão sobre PaaS
Java e uma visão sobre PaaSJava e uma visão sobre PaaS
Java e uma visão sobre PaaSEder Magalhães
 
Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Dr. Spock
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysDr. Spock
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysDr. Spock
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"Stefan Horochovec
 
Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Facescejug
 
JSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaJSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaDr. Spock
 
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015  Porto Alegre - Interfaces ricas com Rails e React.JSTDC2015  Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JSRodrigo Urubatan
 
JSF 2 - Java "Super" Faces
JSF 2 - Java "Super" FacesJSF 2 - Java "Super" Faces
JSF 2 - Java "Super" FacesFilipe Portes
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
 

Similaire à RichFaces 4 Desenvolvimento Web com JSF2 mais rico (20)

JSF2 c/ PrimeFaces, RichFaces e ICEfaces
JSF2 c/ PrimeFaces, RichFaces e ICEfacesJSF2 c/ PrimeFaces, RichFaces e ICEfaces
JSF2 c/ PrimeFaces, RichFaces e ICEfaces
 
Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!
 
Arquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App EngineArquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App Engine
 
TDC 2012 - JDF
TDC 2012 - JDFTDC 2012 - JDF
TDC 2012 - JDF
 
JavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingJavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computing
 
Desenvolvimento RIA com GWT e Spring
Desenvolvimento RIA com GWT e SpringDesenvolvimento RIA com GWT e Spring
Desenvolvimento RIA com GWT e Spring
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
 
Java e uma visão sobre PaaS
Java e uma visão sobre PaaSJava e uma visão sobre PaaS
Java e uma visão sobre PaaS
 
Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2
 
Introducao Spring ROO
Introducao Spring ROOIntroducao Spring ROO
Introducao Spring ROO
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 
Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Faces
 
Spring Roo
Spring RooSpring Roo
Spring Roo
 
JSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaJSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com Java
 
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015  Porto Alegre - Interfaces ricas com Rails e React.JSTDC2015  Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
 
JSF 2 - Java "Super" Faces
JSF 2 - Java "Super" FacesJSF 2 - Java "Super" Faces
JSF 2 - Java "Super" Faces
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 

Plus de Eder Magalhães

Concorrencia, baixa Latência e alta disponibilidade
Concorrencia, baixa Latência e alta disponibilidadeConcorrencia, baixa Latência e alta disponibilidade
Concorrencia, baixa Latência e alta disponibilidadeEder Magalhães
 
Java Is Back, Novidade do Java 8
Java Is Back, Novidade do Java 8Java Is Back, Novidade do Java 8
Java Is Back, Novidade do Java 8Eder Magalhães
 
Desenvolva uma app Java web em poucos passos, com o Forge
Desenvolva uma app Java web em poucos passos, com o ForgeDesenvolva uma app Java web em poucos passos, com o Forge
Desenvolva uma app Java web em poucos passos, com o ForgeEder Magalhães
 
MongoDB outras alternativas de persistência
MongoDB outras alternativas de persistênciaMongoDB outras alternativas de persistência
MongoDB outras alternativas de persistênciaEder Magalhães
 
JDK8: Lambda, Jigsaw e novidades
JDK8: Lambda, Jigsaw e novidadesJDK8: Lambda, Jigsaw e novidades
JDK8: Lambda, Jigsaw e novidadesEder Magalhães
 
Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EEEder Magalhães
 
As modificações na Linguagem: Java 7 e Java 8
As modificações na Linguagem: Java 7 e Java 8As modificações na Linguagem: Java 7 e Java 8
As modificações na Linguagem: Java 7 e Java 8Eder Magalhães
 
Desenvolvimento Produtivo com Spring Roo
Desenvolvimento Produtivo com Spring RooDesenvolvimento Produtivo com Spring Roo
Desenvolvimento Produtivo com Spring RooEder Magalhães
 
Futuro da linguagem e plataforma: Java 7 e 8
Futuro da linguagem e plataforma: Java 7 e 8Futuro da linguagem e plataforma: Java 7 e 8
Futuro da linguagem e plataforma: Java 7 e 8Eder Magalhães
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVCEder Magalhães
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem PráticaEder Magalhães
 
Profissao java gwt e javafx
Profissao java gwt e javafxProfissao java gwt e javafx
Profissao java gwt e javafxEder Magalhães
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010Eder Magalhães
 

Plus de Eder Magalhães (19)

Cvc programacao reativa
Cvc programacao reativaCvc programacao reativa
Cvc programacao reativa
 
Concorrencia, baixa Latência e alta disponibilidade
Concorrencia, baixa Latência e alta disponibilidadeConcorrencia, baixa Latência e alta disponibilidade
Concorrencia, baixa Latência e alta disponibilidade
 
Java Is Back, Novidade do Java 8
Java Is Back, Novidade do Java 8Java Is Back, Novidade do Java 8
Java Is Back, Novidade do Java 8
 
Desenvolva uma app Java web em poucos passos, com o Forge
Desenvolva uma app Java web em poucos passos, com o ForgeDesenvolva uma app Java web em poucos passos, com o Forge
Desenvolva uma app Java web em poucos passos, com o Forge
 
MongoDB outras alternativas de persistência
MongoDB outras alternativas de persistênciaMongoDB outras alternativas de persistência
MongoDB outras alternativas de persistência
 
JDK8: Lambda, Jigsaw e novidades
JDK8: Lambda, Jigsaw e novidadesJDK8: Lambda, Jigsaw e novidades
JDK8: Lambda, Jigsaw e novidades
 
Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EE
 
As modificações na Linguagem: Java 7 e Java 8
As modificações na Linguagem: Java 7 e Java 8As modificações na Linguagem: Java 7 e Java 8
As modificações na Linguagem: Java 7 e Java 8
 
Desenvolvimento Produtivo com Spring Roo
Desenvolvimento Produtivo com Spring RooDesenvolvimento Produtivo com Spring Roo
Desenvolvimento Produtivo com Spring Roo
 
Futuro da linguagem e plataforma: Java 7 e 8
Futuro da linguagem e plataforma: Java 7 e 8Futuro da linguagem e plataforma: Java 7 e 8
Futuro da linguagem e plataforma: Java 7 e 8
 
Java7 tdc2011
Java7 tdc2011Java7 tdc2011
Java7 tdc2011
 
Introducao Google GO
Introducao Google GOIntroducao Google GO
Introducao Google GO
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVC
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem Prática
 
Profissao java gwt e javafx
Profissao java gwt e javafxProfissao java gwt e javafx
Profissao java gwt e javafx
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010
 
Android SestInfo 2010
Android SestInfo 2010Android SestInfo 2010
Android SestInfo 2010
 
JavaFX SestInfo 2010
JavaFX SestInfo 2010JavaFX SestInfo 2010
JavaFX SestInfo 2010
 
Gwt-Guice_TDC2009
Gwt-Guice_TDC2009Gwt-Guice_TDC2009
Gwt-Guice_TDC2009
 

RichFaces 4 Desenvolvimento Web com JSF2 mais rico

  • 1. RichFaces 4 Desenvolvimento Web com JSF2 mais rico Globalcode  –  Open4education
  • 2. Eu Eder Magalhães eder@yaw.com.br twitter.com/edermag Globalcode  –  Open4education
  • 3. Agenda !   Sobre JavaServer Faces; !   Introdução ao RichFaces; !   Características do RichFaces; !   Demonstração de Componentes Visuais; !   Demonstração da Validação lado cliente; !   Links e twitters; Globalcode  –  Open4education
  • 4. 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
  • 5. 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
  • 6. JSF 1.* puro? !   Usar um suíte ou extensão de componentes era praticamente obrigatório! Globalcode  –  Open4education
  • 7. JSF 2 versus Suíte de Componentes !   Com 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
  • 8. !   RichFaces é a suíte mais famosa para JSF 1.*; !   RichFaces 4: !   Lançado recentemente com suporte a JSF 2; !   Projeto foi reconstruído para suportar JSF 2; Globalcode  –  Open4education
  • 9. JavaScript do RichFaces 4 !   JavaScript gerado é baseado em jQuery! Globalcode  –  Open4education
  • 10. Refactoring !   Todos os componentes foram revisados: !   Usabilidade; !   Melhor semântica HTML; !   Mais performance em código client-side e server-side; !   Código mais limpo; Globalcode  –  Open4education
  • 11. Instalação !   Só colocar os jars no projeto (libs); !   Ou configurar os artefatos (Maven); !   Nenhuma configuração extra via xml; Globalcode  –  Open4education
  • 12. Roda em quais servidores? !   Tomcat 6 e 7; !   JBoss AS 6 e 7; !   Glassfish 3.*; !   Qualquer servidor com suporte a JSF 2; !   Cloud: GAE + Amazon EC2 + CloudBees; Globalcode  –  Open4education
  • 13. Mais detalhes sobre o RichFaces !   UI Components: !   a4j: tag lib p/ Ajax; !   rich: tag lib p/ componentes visuais; !   Skin; !   Validação client-side (Bean Validation); !   Component Development Kit Globalcode  –  Open4education
  • 14. Alguns Componentes Ajax !   a4j:ajax ! a4j:commandButton ! a4j:commandLink ! a4j:param !   a4j:poll !   a4j:status !   a4j:region Globalcode  –  Open4education
  • 15. Queue para Ajax !   Organiza as requisições Ajax em telas complexas; !   Funcionalidades: !   requestDelay !   requestGrouping !   ignoreDupResponses !   Cria um escopo de fila; !   Eventos no cliente e API JavaScript; Globalcode  –  Open4education
  • 16. Alguns Componentes UI !   rich:datatable !   rich:dataGrid !   rich:calendar !   rich:toolTip !   rich:select !   rich:list !   rich:autocomplete Globalcode  –  Open4education
  • 17. ScrumToys: a cobaia! !   Demo: instalação + componentes básicos do RichFaces Globalcode  –  Open4education
  • 18. Componentes p/ próximas versões !   rich:colorPicker !   rich:editor !   rich:listShuttle !   rich:gmap Globalcode  –  Open4education
  • 19. Validação lado cliente !   Utiliza os validadores JSF; !   Compreende JSR 303; !   Gera código JavaScript para validar; !   Suporta validação de múltiplos valores (campos); !   Agrega valor ao rich:message; Globalcode  –  Open4education
  • 20. ScrumToys: a cobaia, o retorno! !   Demo: validadores JSF + Bean Validations Globalcode  –  Open4education
  • 21. RichFaces 4 Mobile Development !   http://bit.ly/mCWTZB Post  falando  sobre  o  assunto  no  Jboss  World  2011  Keynote   Globalcode  –  Open4education
  • 22. RichFaces 4.1 – coming soon !   Os fontes migrados para o Git; !   Novos componentes UI; !   Integração com Seam-forge; !   Melhor suporte p/ HTML5 e Mobile; !   Sandbox e CDK; !   Bug fixing; 6  meses  de  trabalho…   Globalcode  –  Open4education
  • 23. Experimente ! http://richfaces-showcase.appspot.com/ RichFaces  4  Showcase   Globalcode  –  Open4education
  • 24. Estratégia para aplicativos JSF +   +   …   JavaServer  Faces   Model   Service   Persistence   !   http://bit.ly/oiPSmj Globalcode  –  Open4education
  • 25. Planejamento p/ JSF JavaServer  Faces   Java  EE   JSF  1.2  –  JSR  127   5.0   JSF  2.1  –  JSR  314   6.0   JSF  2.2  –  JSR  344   6.0   JSF  3   7.0   Globalcode  –  Open4education
  • 26. Algumas referências ! http://www.jboss.org/richfaces !   http://bit.ly/RF_Downloads !   http://bit.ly/RH_Getting_Started !   http://bit.ly/RF_User_Space !   http://richfaces-showcase.appspot.com/ !   http://jcp.org/en/jsr/detail?id=344 !   http://blog.globalcode.com.br/search/label/JSF !   http://mkblog.exadel.com/ Globalcode  –  Open4education
  • 27. Follow @maxkatz @cagataycivici @kito99 @jasondlee @edburns @richfaces @primefaces @jbossseam Globalcode  –  Open4education
  • 28. Obrigado ! eder@yaw.com.br @edermag Globalcode  –  Open4education