Java Server Faces

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Java Server Faces - Presentation Transcript

    1. Java Server Faces João Sávio Ceregatti Longo Campus Ambassador Sun Microsystems 1
    2. Por que Java Server Faces? • Duas técnicas de desenvolvimento de aplicativos para web: (1) Desenvolvimento rápido; (2) Programação aprofundada; Sun Confidential: Internal Only 2
    3. Por que Java Server Faces? • Facilidade de programar interface de usuários • É mais do que um framework, é uma especificação baseada em MVC • Suporte a internacionalização • Conversores e validadores Sun Confidential: Internal Only 3
    4. Por que Java Server Faces? • Flexibilidade para renderização • Facilita a transferência dos dados entre telas e camadas de negócio através da EL • Padrão • Open Source Sun Confidential: Internal Only 4
    5. Empresas que utilizam JSF (não-oficial) Sun Confidential: Internal Only 5
    6. Empresas que utilizam JSF (não-oficial) • Vivo • CVC • SUS • TIM • www.comprafacil.com.br • Banco IBI Sun Confidential: Internal Only 6
    7. O que ele possui? • Conjunto de componentes de UI pré-desenvolvidos • Modelo de programação dirigida por eventos • Modelo de componentes que permite a utilização de outros componentes fornecidos por terceiros Sun Confidential: Internal Only 7
    8. Implementações JSF • Morraja (JSF RI) – Sun Microsystems • MyFaces – Apache • ADF Faces – Oracle • Implementação da IBM • Etc Sun Confidential: Internal Only 8
    9. Componentes JSF • Woodstock • ICEFaces • Apache Tomahawk • JBoss RichFaces • http://www.jsfmatrix.net Sun Confidential: Internal Only 9
    10. Integração com frameworks • Visual Web JSF • Hibernate • Spring Web • Struts • Axis2 • Facelets Sun Confidential: Internal Only 10
    11. Servidores • Glassfish • Apache Tomcat • JBoss Application Server • IBM WebSphere • Etc Sun Confidential: Internal Only 11
    12. Entendendo um pouco de JSF Sun Confidential: Internal Only 12
    13. Conceitos importantes • Tags JSF • Beans • Backing Beans • Regras de Navegação • Navegação estática x dinâmica Sun Confidential: Internal Only 13
    14. Algumas Tags JSF • <f:view> • <h:form> • <h:inputText> • <h:inputSecret> • <h:commandButton> • http://www.horstmann.com/corejsf/jsf-tags.html Sun Confidential: Internal Only 14
    15. Beans • Classes simples com variáveis e seus respectivos métodos setters e getters Sun Confidential: Internal Only 15
    16. Beans public class Usuario { private String login; public void setLogin(String login) { this.login = login; } public String getLogin() { return login; } } Sun Confidential: Internal Only 16
    17. Backing Beans • Objetos que sofrerão alterações em seus atributos durante uma requisição, assim como seus métodos podem ser chamados a partir de um command • Contém as variáveis que serão mostradas na tela • São configurados no faces-config.xml • 3 tipos de escopo: request, session e application Sun Confidential: Internal Only 17
    18. Backing Beans public class BackingBean { private Usuario usuario = new Usuario(); public String logar() { if (usuario.getLogin().equals(“João Sávio”)) return “gotoMain”; else return “gotoErro”; } //sets e gets de usuario } Sun Confidential: Internal Only 18
    19. Backing Beans <managed-bean> <managed-bean-name>bb</managed-bean-name> <managed-bean-class>BackingBean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> Sun Confidential: Internal Only 19
    20. Regras de Navegação • - Ei, para qual página vamos agora?; • Configuradas também no faces-config.xml; Sun Confidential: Internal Only 20
    21. Regras de Navegação <navigation-rule> <from-view-id>/welcomeJSF.jsp</from-view-id> <navigation-case> <from-outcome>gotoMain</from-outcome> <to-view-id>/main.jsp</to-view-id> </navigation-case> ... </navigation-rule> Sun Confidential: Internal Only 21
    22. Expression Language (EL) • É uma poderosa linguagem de expressão para acessar propriedades de beans e coleções • Quando ocorrer uma requisição pelo browser, os elementos da página são preenchidos dinamicamente pela camada de negócios Sun Confidential: Internal Only 22
    23. Expression Language (EL) • Utilizamos a notação: “#{apelido.algumaCoisa}” para acessar algum campo ou método do Backing Bean; Sun Confidential: Internal Only 23
    24. Juntando Tudo <body> <f:view> <h:form> Login: <h:inputText value="#{bb.usuario.login}"/> <h:commandButton value="OK” action="#{bb.logar}"/> </h:form> </f:view> </body> Sun Confidential: Internal Only 24
    25. Juntando Tudo <h:inputText value = “#{bb.usuario.login}“/> • acessa a variável "login" do objeto “usuario” que está definido no Backing Bean chamado de "bb"; <h:commandButton value=“OK” action=”#{bb.logar}”/> • chama o método "logar" do BackingBean "bb"; Sun Confidential: Internal Only 25
    26. Navegação Estática x Dinâmica • Estática: <h:commandButton value=”Login” action=”gotoMain”/>; • Dinâmica: <h:commandButton value=”Login” action=”#{bb.logar}”/>; Sun Confidential: Internal Only 26
    27. Model-View-Controller (MVC) Sun Confidential: Internal Only 27
    28. MVC • É um padrão para desenvolvimento de software • Divisão em 3 camadas: >> Model >> View >> Controller • MVC 2 = MVC + Front Controller Sun Confidential: Internal Only 28
    29. JSF e MVC 2 Sun Confidential: Internal Only 29
    30. JSF e MVC 2 • O Controller despacha as Solicitações ao Model; • A View observa o Model; Sun Confidential: Internal Only 30
    31. JSF e MVC 2 • Resumo: ✔ Model – beans e acesso a banco de dados; ✔ View – páginas JSP; ✔ Controller – Backing Beans; Sun Confidential: Internal Only 31
    32. Usando o NetBeans Sun Confidential: Internal Only 32
    33. Sun Confidential: Internal Only 33
    34. Sun Confidential: Internal Only 34
    35. Sun Confidential: Internal Only 35
    36. Sun Confidential: Internal Only 36
    37. Sun Confidential: Internal Only 37
    38. Links • Entendendo um pouco de Java Server Faces (JSF): http://www.javafree.org/artigo/871659/Entendendo-um- pouco-de-Java-Server-Faces-JSF.html • Especificação oficial JSF (capítulos 10 - 14): http://java.sun.com/javaee/5/docs/tutorial/doc/bnaph.html • www.rponte.com.br • Lista de e-mail: javasf@googlegroups.com Sun Confidential: Internal Only 38
    39. Obrigado! João Sávio Ceregatti Longo joao.savio@sun.com / joaosavio@gmail.com www.joaosavio.com 39

    + João LongoJoão Longo, 4 months ago

    custom

    547 views, 1 favs, 1 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 547
      • 481 on SlideShare
      • 66 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 0
    Most viewed embeds
    • 66 views on http://joaosavio.wordpress.com

    more

    All embeds
    • 66 views on http://joaosavio.wordpress.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories