SlideShare uma empresa Scribd logo
JSF: Introdução ao
Java Server Faces
Willian Massami Watanabe
1
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
MVC - Model View Controller
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
• Servlet
• Processa a requisição HTTP
• Chama o model
• Decide qual view será
renderizada
• JavaBeans ou POJO
• Regra de negócios
• Persistência dos dados
• JSP
• Renderiza HTML
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
• Servlet
• Processa a requisição HTTP
• Chama o model
• Decide qual view será
renderizada
• JavaBeans ou POJO
• Regra de negócios
• Persistência dos dados
• JSP
• Renderiza HTML
Java Server Faces
Java Server Faces
• Framework Java para implementação de interfaces
web
• Implementação diferenciada do MVC
• Funcionalidades: validação, conversão,
templating, entre outras
• Objetivo:
• facilitar o desenvolvimento de aplicações web
8
Java Server Faces
• Histórico
• Framework da camada de apresentação
• Criada pela JCP - Java Community Process
• Possui uma comunidade bastante ativa
• Atualmente na versão 2.0
9
Exemplo 1
• XHTML - eXtensible HyperText Markup Language!
• Quase idêntico ao HTML
• Formatação estrita
• Definido como um XML - eXtensible Markup Language
• Namespaces
• XHTML - eXtensible HyperText Markup Language!
• Quase idêntico ao HTML
• Formatação estrita
• Definido como um XML - eXtensible Markup Language
• Namespaces
http://localhost:8080/faces/teste/index.xhtml
http://localhost:8080/faces/teste/index.xhtml
Faces Servlet
web.xml
http://localhost:8080/faces/teste/index.xhtml
Faces Servlet
web.xml
http://localhost:8080/faces/teste/index.xhtml
Faces Servlet
web.xml
http://localhost:8080/faces/teste/index.xhtml
Faces Servlet
web.xml
Exemplo 1
• Importante lembrar
• Faces Servlet
• XHTML
• Namespaces
Exemplo 2
Exemplo 2
• Importante lembrar
• ManagedBeans
• SessionScope
• EL
31
Exemplo 3
Exemplo 3
• Importante lembrar
• Formulário vinculado ao ManagedBean
• Especificação de Beans
• Chamada ao método add
41
Ciclo de vida
Requisição
HTTP
Java Server Faces -
MVC
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
• Servlet
• Processa a requisição HTTP
• Chama o model
• Decide qual view será
renderizada
• JavaBeans ou POJO
• Regra de negócios
• Persistência dos dados
• JSP
• Renderiza HTML
Controller
ViewModel
Requisição
HTTP
Consulta as regras
de negócios
Envia resposta
HTML, JSON,
XML
• Servlet
• Processa a requisição HTTP
• Chama o model
• Decide qual view será
• JavaBeans ou POJO
• Regra de negócios
• Persistência dos dados
• JSP
• Renderiza HTML
XHTML
Implementações
• Oracle Mojarra
• Apache MyFaces
56
O que mais?
• @ManagedBeans e @Scopes
• Componentes de interface do JSF
• Validators e converters
• Navigation rules
• Facelets
• Ajax
• Extensões: PrimeFaces, IceFaces, RichFaces, etc.
57

Mais conteúdo relacionado

Mais procurados

Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
Leandro Costa
 
Apresentação jsf 2.0
Apresentação jsf 2.0Apresentação jsf 2.0
Apresentação jsf 2.0
Paulo Neto
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
Sérgio Vilar
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010
Eder Magalhães
 

Mais procurados (20)

Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
 
Apresentação jsf 2.0
Apresentação jsf 2.0Apresentação jsf 2.0
Apresentação jsf 2.0
 
UtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_Melo
UtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_MeloUtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_Melo
UtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_Melo
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com Primefaces
 
Apresentação jsf 1_2
Apresentação jsf 1_2Apresentação jsf 1_2
Apresentação jsf 1_2
 
Como escolher o Framework Java para web?
Como escolher o Framework Java para web?Como escolher o Framework Java para web?
Como escolher o Framework Java para web?
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010
 
Navegando em um mar de siglas do mundo java
Navegando em um mar de siglas do mundo javaNavegando em um mar de siglas do mundo java
Navegando em um mar de siglas do mundo java
 
Java Web 1 Introducao
Java Web 1 IntroducaoJava Web 1 Introducao
Java Web 1 Introducao
 
Serra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EESerra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EE
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do GojavaJSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
Arquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAOArquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAO
 
Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2
 
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
 
Desenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephpDesenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephp
 
Prime Faces
Prime FacesPrime Faces
Prime Faces
 
Arquitetura do Framework Spring
Arquitetura do Framework SpringArquitetura do Framework Spring
Arquitetura do Framework Spring
 

Destaque (9)

Boas Práticas com JavaServer Faces (Jsf)
Boas Práticas com JavaServer Faces (Jsf)Boas Práticas com JavaServer Faces (Jsf)
Boas Práticas com JavaServer Faces (Jsf)
 
11601快訊新聞五則
11601快訊新聞五則11601快訊新聞五則
11601快訊新聞五則
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer Faces
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
Desenvolvimento Web com JSF
Desenvolvimento Web com JSFDesenvolvimento Web com JSF
Desenvolvimento Web com JSF
 
Framework web 3 - JSF + Spring boot
Framework web 3 - JSF + Spring bootFramework web 3 - JSF + Spring boot
Framework web 3 - JSF + Spring boot
 
Apostila jsf
Apostila jsfApostila jsf
Apostila jsf
 
Apostila JSF 2.0 - K19
Apostila JSF 2.0 - K19Apostila JSF 2.0 - K19
Apostila JSF 2.0 - K19
 
Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22
 

Semelhante a Introdução ao JavaServer Faces

Linguagem PHP para principiantes
Linguagem PHP para principiantesLinguagem PHP para principiantes
Linguagem PHP para principiantes
Marco Pinheiro
 
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHPLabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
Carlos Santos
 
Minicurso Java Server Faces
Minicurso Java Server FacesMinicurso Java Server Faces
Minicurso Java Server Faces
João Longo
 

Semelhante a Introdução ao JavaServer Faces (20)

Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSP
 
Linguagem PHP para principiantes
Linguagem PHP para principiantesLinguagem PHP para principiantes
Linguagem PHP para principiantes
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Java web
Java webJava web
Java web
 
MVC na plataforma JEE
MVC na plataforma JEEMVC na plataforma JEE
MVC na plataforma JEE
 
Projeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordProjeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecord
 
Conexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao AjaxConexão Java 2006: Introdução ao Ajax
Conexão Java 2006: Introdução ao Ajax
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
IIS para desenvolvedores
IIS para desenvolvedoresIIS para desenvolvedores
IIS para desenvolvedores
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8
 
Apache Wicket - Desenvolvimento WEB orientado a componentes
Apache Wicket - Desenvolvimento WEB orientado a componentesApache Wicket - Desenvolvimento WEB orientado a componentes
Apache Wicket - Desenvolvimento WEB orientado a componentes
 
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHPLabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
LabMM4 (T10 - 12/13) - Tecnologias server-side - PHP
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São Carlos
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.
 
Introdução ao ASP .NET Web API
Introdução ao ASP .NET Web APIIntrodução ao ASP .NET Web API
Introdução ao ASP .NET Web API
 
Minicurso Java Server Faces
Minicurso Java Server FacesMinicurso Java Server Faces
Minicurso Java Server Faces
 
ASP .NET Core MVC
ASP .NET Core MVCASP .NET Core MVC
ASP .NET Core MVC
 

Mais de Willian Watanabe (9)

JPA
JPAJPA
JPA
 
Cookies e Sessions no HTTP
Cookies e Sessions no HTTPCookies e Sessions no HTTP
Cookies e Sessions no HTTP
 
Comunicação Cliente/Servidor - HTTP
Comunicação Cliente/Servidor - HTTPComunicação Cliente/Servidor - HTTP
Comunicação Cliente/Servidor - HTTP
 
CSS - Pseudo-classes, Seletores e Media-queries
CSS - Pseudo-classes, Seletores e Media-queriesCSS - Pseudo-classes, Seletores e Media-queries
CSS - Pseudo-classes, Seletores e Media-queries
 
CSS - Posicionamento
CSS - PosicionamentoCSS - Posicionamento
CSS - Posicionamento
 
CSS - Modelo de Caixa
CSS - Modelo de CaixaCSS - Modelo de Caixa
CSS - Modelo de Caixa
 
Introdução ao CSS
Introdução ao CSSIntrodução ao CSS
Introdução ao CSS
 
Introdução ao HTML
Introdução ao HTMLIntrodução ao HTML
Introdução ao HTML
 
HTML/HTTP e a Web
HTML/HTTP e a WebHTML/HTTP e a Web
HTML/HTTP e a Web
 

Último

AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
Consultoria Acadêmica
 
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
Consultoria Acadêmica
 
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdfATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
Colaborar Educacional
 

Último (7)

AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
AE02 - MAQUINAS TÉRMICAS UNICESUMAR 52/2024
 
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
AE01 -ESTUDO CONTEMPORÂNEO E TRANSVERSAL -COMUNICAÇÃO ASSERTIVA E INTERPESSOA...
 
Checklist de renovação de AVCB -Auto de Vistoria do Corpo de Bombeiros.pdf
Checklist de renovação de AVCB -Auto de Vistoria do Corpo de Bombeiros.pdfChecklist de renovação de AVCB -Auto de Vistoria do Corpo de Bombeiros.pdf
Checklist de renovação de AVCB -Auto de Vistoria do Corpo de Bombeiros.pdf
 
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdfATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
ATIVIDADE 2 - PSICOLOGIA ORGANIZACIONAL - ok.pdf
 
ST 2024 Statum Apresentação Comercial - VF
ST 2024 Statum Apresentação Comercial - VFST 2024 Statum Apresentação Comercial - VF
ST 2024 Statum Apresentação Comercial - VF
 
Aula 03 - Gestão da Manutenção - OS e Software de Gerenciamento de Manutenção...
Aula 03 - Gestão da Manutenção - OS e Software de Gerenciamento de Manutenção...Aula 03 - Gestão da Manutenção - OS e Software de Gerenciamento de Manutenção...
Aula 03 - Gestão da Manutenção - OS e Software de Gerenciamento de Manutenção...
 
AE01 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL RELACOES DE CONSUMO E SUSTENTABILI...
AE01 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL  RELACOES DE CONSUMO E SUSTENTABILI...AE01 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL  RELACOES DE CONSUMO E SUSTENTABILI...
AE01 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL RELACOES DE CONSUMO E SUSTENTABILI...
 

Introdução ao JavaServer Faces