Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouTayná Ramos Alterado mais de 9 anos atrás
1
JavaServer Faces Rapid Web Application Development em Java Ricardo Cavalcanti roc3@cin.ufpe.br Jobson Ronan jrjs@cin.ufpe.br
2
O que é? Um framework padrão(Standard) para aplicações webs Define um modelo de programação Componentes Reusáveis Gera HTML a partir dos componentes Validação e conversão Arvore de componentes
3
Objetivos Simplificar o desenvolvimento Suporte por ferramentas Eventos facilmente ligado a código server-side Fácil de estender Gerenciar o estado da UI
4
Padrões e Arquitetura Model-View-Controller (MVC) Baseada em factories Árvore de componentes (Composite) Eventos do lado do servidor
5
Mas o que é mesmo? Uma aplicação JSF é como qualquer outra aplicação web Java Roda dentro de um servlet container, e normalmente é composta de: Simples componentes Java Beans Event Listeners Páginas, como páginas JSP Outras classes como classes de acesso a dados
6
Mas o que é mesmo? Em adição aplicações JSF também contém: Uma tag library para renderizar os componentes gráficos na página Uma tag library para tratamento de eventos, validações e outras acções Backing Beans, que definem propriedades e funções para os componentes gráficos
7
Mas o que é mesmo? Além de: Classes implementando validators, converters, event listeners e event handlers Um descritor de aplicação para configurar o funcionamento da mesma
8
Como usar? Prescisa-se de uma implementação: Implementação de referência MyFaces, do grupo Jakarta
9
Ciclo de vida do Request- response
10
Como usar? Declarar o Faces Servlet (Front Controller) web.xml Faces Servlet javax.faces.webapp.FacesServlet 1 Faces Servlet *.jsf contextConfigLocation /WEB-INF/faces-config.xml
11
Como usar? Características Front Controller MVC (como Struts) Configuravel através de parametros de contexto
12
Simples exemplo Botão “trocar” troca o conteúdo do campo1 pelo do campo2, e vice- versa
13
Implementando páginas TagLibraries UIComponent + HTML RenderKit Renderer Core JavaServer Faces
14
UIComponent + HTML RenderKit Renderer Define um campo de entrada de texto Atributos value: expressão que indica o conteúdo do campo. Possivelmente uma propriedade de um bean
15
UIComponent + HTML RenderKit Renderer Define um botão de ação Atributos action: expressão que indica a ação a ser invocada quando este componente for ativado actionListener: expressão que indica o método de listener que será notificado quando este componente for ativado
16
UIComponent + HTML RenderKit Renderer O método “trocar” do bean Trocar, não deve receber parâmetros e deve retornar uma String
17
UIComponent + HTML RenderKit Renderer Renderiza um componente “a” HTML que funciona como um botão submit de um form Uso análogo ao commandButton
18
UIComponent + HTML RenderKit Renderer Renderiza um formulário HTML
19
Core JavaServer Faces Container para todos os componentes usados na página Todos os componentes JavaServer Faces devem ser aninhados a este
20
Exemplo completo Troca Exemplo Campo1: Campo2:
21
Backing Bean Model Que bean “TrocaBean” é este? package pcc; public class Troca { private String campo1; private String campo2; //gets e sets... public String troca() { String temp = campo1; campo1 = campo2; campo2 = temp; return “sucesso”; }
22
Backing Bean Model Declarado no faces-config.xml <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd"> TrocaBean pcc.Troca request
23
Backing Bean Model Demostração...
24
Validação Suporte validação de campos de entrada de forma declarativa ,, e outros validators customizados podem ser aninhados campos de entrada
25
Validação Suporte validação de campos de entrada de forma programática Um método do bean no formato public void xyz(FacesContext faces, UIComponent coponent, Object value) Uma classe que implemente a interface javax.faces.validator.Validator
26
Validação Mensagens de erro podem ser impressas utilizando a tag Atributos for: O id do campo do qual deseja-se mostrar uma mensagem, possivelmente de erro
27
Validação Demostração...
28
O que mais? Navegação definida no faces- config.xml Condicionada e método do bean Condicionada a retorno do método do bean
29
O que mais? Exemplo (faces-config.xml) /troca.jsp success /trocaSucesso.jsp
30
O que mais? Injeção de dependência nos beans Suporte a internacionalização
31
O que mais? Converters para a conversão de entradas em objetos específicos Implementados de formas análogas a validação Listeners de eventos do usuário Implementados de formas análogas a validação e a converters
32
O que mais? Gerênciadores de layout Geração de Tabelas de dados total suporte a coleções
33
O que mais? Suporte a outros tipos de entrada
34
O que mais? Implementação open-source, MyFaces (jakarta), com excelentes componentes customizados Geradores de menus Geradores de popups Geradores de Barra de navegação Grande quantidade de Validators customizados: EmailValidator, CreditCardValidator, etc.
35
O que mais? Suporte de ferramentas comerciais para geração Drag’n Drop Sun Java Studio Creator IBM Webspheere JDeveloper (free) Uma tecnologia de geração de páginas a altura de ASP.NET Porém, com toda a maturidade da linguagem Java no ServerSide
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.