JSF JavaServer FacesFrancisco Ernesto Teixeira - fco.ernesto@gmail.com
QuemNordestino dali de Recife, colega de vocês do cursode Sistemas de Informação. Botou os pés pra rua há16 anos, tem 12 f...
Um pouco de históriaSéculo passado, Web, CGI, Servlet, JSP, MVC, Struts...Enfim JavaServer Faces!!!
Explique-meO JSF é uma tecnologia, que:● Usa boas práticas● Tem o MVC na veia!!!● Como qualquer tecnologia, requer bom sen...
Relembrando MVC
MVC do JSF
O que é que tem nele?● Um conjunto de APIs para componentes de UI● Gerenciamento de estado, controle de eventos,validação ...
Existem tantos outros● Leve, flexível e extremamente prático● Toda IDE possui● Eu gosto do NetBeans, mas o Eclipse também ...
Entendo algumas coisas● No HTML, temos as TAGs● No JSF também temos as TAGs● O HTML é um “tio” do JSF● No JSF existem TAGs...
Então...HTML JSFhead h:headbody h:bodyform h:formdiv h:panelGrouplabel h:outputLabelinput[type=”hidden”] h:inputHiddeninpu...
Continuando...HTML JSFtable h:dataTabletd h:columnth f:facet name=”header”a h:commandLink- h:outputText- f:setPropertyActi...
Quem usa?● Tramita, TCE-PB● Ministério Público, Judiciários, Procuradorias● Vai trabalhar na Oi? JSF● Matéria de Concurso
Problemas no mercado● Falta mão de obra especializada● Os problemas são simples, as necessidades sãomuitas
Voltando para a BRVamos fazer um simples CRUD com o modelo:
Sim, e...?● Como já disse que gosto do NetBeans, vou usar oNetBeans... mas podem usar o Eclipse se preferir● Para agilizar...
Só isso?Sim!!! E para facilitar lhes dou o fluxo das telas,diagrama da classe principal, diagrama dos pacotes esó não pego...
Fluxo de Telasessa tela é da listagem
Classe Principal
Pacotes
O pulo do gatinho
Erro 404● Precisa ser feitos ajustes no Hibernate para funcionardireito com o MySQL● Está havendo erro de acentos na hora ...
Erro 404 - HibernatePrecisamos adicionar no hibernate.cfg.xml:<!-- Enable Hibernates automatic session context management ...
Erro 404 - AcentosO Tomcat vem com ISO8859-1, hoje devemos sempreusar UTF-8. Corrigimos isso com a criação de um filtrosrc...
Modo TurboO JSF não para por aí. Existem outras bibliotecas que“turbinam” a sua capacidade. Dentre eles, os maisconhecidos...
ComparativoFonte: http://www.mastertheboss.com/richfaces/primefaces-vs-richfaces-vs-icefaces/Vantagens Desvantagens● Bibli...
Em gráficoFonte: http://www.google.com.br/trends/explore#q=primefaces%2C%20icefaces%2C%20richfaces&cmpt=q
ExemplosMuitos exemplos para brincar e fazer a melhor escolhade acordo com sua necessidade (lembre-se que oPrimeFaces tem ...
Dúvidas?alle Fragen?
Upcoming SlideShare
Loading in …5
×

JSF - JavaServer Faces

1,001 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,001
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
29
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

JSF - JavaServer Faces

  1. 1. JSF JavaServer FacesFrancisco Ernesto Teixeira - fco.ernesto@gmail.com
  2. 2. QuemNordestino dali de Recife, colega de vocês do cursode Sistemas de Informação. Botou os pés pra rua há16 anos, tem 12 fora de Casa e 3 anos curtindo BSB.Conheceu o Java (?) em 97 com os applets (?)quando ainda não havia o Flash.
  3. 3. Um pouco de históriaSéculo passado, Web, CGI, Servlet, JSP, MVC, Struts...Enfim JavaServer Faces!!!
  4. 4. Explique-meO JSF é uma tecnologia, que:● Usa boas práticas● Tem o MVC na veia!!!● Como qualquer tecnologia, requer bom senso emseu uso
  5. 5. Relembrando MVC
  6. 6. MVC do JSF
  7. 7. O que é que tem nele?● Um conjunto de APIs para componentes de UI● Gerenciamento de estado, controle de eventos,validação de entradas● É uma biblioteca, coloca juntinho do Tomcat, Weblogic,Glassfish, JBoss...
  8. 8. Existem tantos outros● Leve, flexível e extremamente prático● Toda IDE possui● Eu gosto do NetBeans, mas o Eclipse também tem● Reuso bem “facinho”● Requisições AJAX bem organizado, você não precisamexer diretamente
  9. 9. Entendo algumas coisas● No HTML, temos as TAGs● No JSF também temos as TAGs● O HTML é um “tio” do JSF● No JSF existem TAGs diferentes, mas vamos aprendera gostar deles● A mágica acontece no Servidor, especificamente noFacesServlet
  10. 10. Então...HTML JSFhead h:headbody h:bodyform h:formdiv h:panelGrouplabel h:outputLabelinput[type=”hidden”] h:inputHiddeninput[type=”text”] h:inputText- f:convertDateTimeselect h:selectOneMenuoption f:selectItembutton h:commandButton clique meuma opção
  11. 11. Continuando...HTML JSFtable h:dataTabletd h:columnth f:facet name=”header”a h:commandLink- h:outputText- f:setPropertyActionListener value=”” target=””sou uma âncora
  12. 12. Quem usa?● Tramita, TCE-PB● Ministério Público, Judiciários, Procuradorias● Vai trabalhar na Oi? JSF● Matéria de Concurso
  13. 13. Problemas no mercado● Falta mão de obra especializada● Os problemas são simples, as necessidades sãomuitas
  14. 14. Voltando para a BRVamos fazer um simples CRUD com o modelo:
  15. 15. Sim, e...?● Como já disse que gosto do NetBeans, vou usar oNetBeans... mas podem usar o Eclipse se preferir● Para agilizar, usaremos o Apache Tomcat que vemnele, Hibernate e uma instância do MySQL
  16. 16. Só isso?Sim!!! E para facilitar lhes dou o fluxo das telas,diagrama da classe principal, diagrama dos pacotes esó não pego na mãozinha porque vocês já podemcaminhar sozinhos!!!
  17. 17. Fluxo de Telasessa tela é da listagem
  18. 18. Classe Principal
  19. 19. Pacotes
  20. 20. O pulo do gatinho
  21. 21. Erro 404● Precisa ser feitos ajustes no Hibernate para funcionardireito com o MySQL● Está havendo erro de acentos na hora que insere umaPessoa (somente no Tomcat)
  22. 22. Erro 404 - HibernatePrecisamos adicionar no hibernate.cfg.xml:<!-- Enable Hibernates automatic session context management --><propertyname="current_session_context_class">thread</property><!-- DONE: Unknown entity: modelo.entidade.Pessoa --><mapping class="modelo.entidade.Pessoa" />
  23. 23. Erro 404 - AcentosO Tomcat vem com ISO8859-1, hoje devemos sempreusar UTF-8. Corrigimos isso com a criação de um filtrosrc/java/util/filtro/EncodeFilter.java. Não vamos nosadentrar nele, no projeto que vocês possuem em mãosele já existe. Podem usar e abusar à vontade!
  24. 24. Modo TurboO JSF não para por aí. Existem outras bibliotecas que“turbinam” a sua capacidade. Dentre eles, os maisconhecidos:RichFaces - http://www.jboss.org/richfacesICEFaces - http://www.icesoft.org/PrimeFaces - http://primefaces.org/
  25. 25. ComparativoFonte: http://www.mastertheboss.com/richfaces/primefaces-vs-richfaces-vs-icefaces/Vantagens Desvantagens● Biblioteca JSF madura e amplamente usada● Possui maior integração com o servidor● Boa performance● Pouquíssimos componentes disponíveis,entretanto você pode usar o material dedesenvolvimento (SDK) para criar novos● Documentação poderia ser melhor detalhada● Renderização única "Direct-2-DOM"● Grande variedade de componentes baseadosno servidor● Maior variedade de documentos e tutoriais,entretanto quase tudo requer registro● Parece ser o de menor performance, aomenos comparando o dataTable● Consiste da maior quantidade de incidentescríticos abertos● Gigantesca coleção de componentesbaseados no levíssimo jQuery● Simples de usar e documentação prática● Aparenta ser a biblioteca mais rápida● Os tópicos dos desenvolvedores dizem:Primefaces● O mais novo do grupo, então possívelmentemenos maduro que o RichFaces e o IceFaces● Mais centrado no cliente, possui menoresmelhorias no núcleo do JSF que o outros dois
  26. 26. Em gráficoFonte: http://www.google.com.br/trends/explore#q=primefaces%2C%20icefaces%2C%20richfaces&cmpt=q
  27. 27. ExemplosMuitos exemplos para brincar e fazer a melhor escolhade acordo com sua necessidade (lembre-se que oPrimeFaces tem maior busca e previsão):http://showcase.richfaces.org/http://icefaces-showcase.icesoft.org/http://www.primefaces.org/showcase/
  28. 28. Dúvidas?alle Fragen?

×