Your SlideShare is downloading. ×
JSF - JavaServer Faces
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

JSF - JavaServer Faces

815
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
815
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. JSF JavaServer FacesFrancisco Ernesto Teixeira - fco.ernesto@gmail.com
  • 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. Um pouco de históriaSéculo passado, Web, CGI, Servlet, JSP, MVC, Struts...Enfim JavaServer Faces!!!
  • 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. Relembrando MVC
  • 6. MVC do JSF
  • 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. 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. 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. 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. Continuando...HTML JSFtable h:dataTabletd h:columnth f:facet name=”header”a h:commandLink- h:outputText- f:setPropertyActionListener value=”” target=””sou uma âncora
  • 12. Quem usa?● Tramita, TCE-PB● Ministério Público, Judiciários, Procuradorias● Vai trabalhar na Oi? JSF● Matéria de Concurso
  • 13. Problemas no mercado● Falta mão de obra especializada● Os problemas são simples, as necessidades sãomuitas
  • 14. Voltando para a BRVamos fazer um simples CRUD com o modelo:
  • 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. 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. Fluxo de Telasessa tela é da listagem
  • 18. Classe Principal
  • 19. Pacotes
  • 20. O pulo do gatinho
  • 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. 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. 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. 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. 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. Em gráficoFonte: http://www.google.com.br/trends/explore#q=primefaces%2C%20icefaces%2C%20richfaces&cmpt=q
  • 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. Dúvidas?alle Fragen?

×