SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Implementando aplicativos Web com JSF


 Trilha – Java EE University
   Otávio Gonçalves de Santana (otaviojava)




                                     Globalcode – Open4education
Agenda

   A importância da interface para o usuário
   MVC - Dividir e conquistar
   Eis que surge o JSF
   Integra com CSS, JavaScript, ajax, html 5...
   Você pode chamar atributos e métodos pelo JSF
   Escopo
   Enviando e recuperando objetos com Converter
  Validando informações com o Validator
  Economizando código com o Facelets
  Criando uma vez e usando quantas quiser
  integrando javascript, css, jquery e html 5 no jsf
  Frameworks em JSF
  E que venha o código


                                                       Globalcode – Open4education
A importância da interface para o usuário


  Aonde eles interagem
  Realiza as tarefas
  Visão aos usuários




                                            Globalcode – Open4education
A importância da interface para o usuário


  Usuabilidade
  Fácil de Interagir
  Amigável




                                            Globalcode – Open4education
A importância da interface para o usuário


  Devem evoluir com o Tempo!
  Menos é mais




                                            Globalcode – Open4education
A importância da interface para o usuário


  Qual você usaria ?




                                            Globalcode – Open4education
A importância da interface para o usuário


  Qual você usaria ?




                                            Globalcode – Open4education
A importância da interface para o usuário


  Mas não adianta ser bonito e não funcionar.




                                            Globalcode – Open4education
MVC - Dividir e conquistar


  Beleza vs Funcionamento
  Código Organizado
  Manutenção Fácil
  Sabe aonde achar o erro




                             Globalcode – Open4education
Eis que surge o JSF ( Java Server Faces)


  Java
  Especificação
  Integração
  Ajax Nativo




                                           Globalcode – Open4education
Integração




             Globalcode – Open4education
Chamando Atributos e métodos




                               Globalcode – Open4education
Chamando Atributos e métodos




                               Globalcode – Open4education
Escopo




         Globalcode – Open4education
Enviando e recuperando Objetos


   Converter
   Você programa Java
   Enviar-Receber Informações




                                 Globalcode – Open4education
Enviando e recuperando Objetos




                                 Globalcode – Open4education
Enviando e recuperando Objetos




                                 Globalcode – Open4education
Validando informações com o Validator


  Campo Obrigatório
  Tipo de Informação
  Coerência




                                        Globalcode – Open4education
Economizando código com o Facelets


  Economiza Código
  Evita “mokey codes”
  Previne dores de Cabeça
  Manutenção rápida




                                     Globalcode – Open4education
Economizando código com o Facelets




                                     Globalcode – Open4education
Economizando código com o Facelets


  Criar uma nova página




                                     Globalcode – Open4education
Economizando código com o Facelets


  Se forem mais 20 páginas




                                     Globalcode – Open4education
Economizando código com o Facelets


  Agora tem que modificar o rodapé




                                     Globalcode – Open4education
Economizando código com o Facelets


  Com Facelets fica mais fácil




                                     Globalcode – Open4education
Economizando código com o Facelets


  Com Facelets fica mais fácil




                                     Globalcode – Open4education
Criando uma vez e usando quantas quiser


   Composite Component




                                          Globalcode – Open4education
Frameworks em JSF


  Basta baixar e usar




                        Globalcode – Open4education
E que venha o código


  Demonstração




                       Globalcode – Open4education
Obrigado


                 Otávio Santana
@otaviojava
otaviojava@java.net
http://otaviosantana.blogspot.com.br/
https://github.com/otaviojava/
                                        Globalcode – Open4education

Contenu connexe

Tendances

Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFX
jesuinoPower
 

Tendances (20)

Gwt parte 01
Gwt   parte 01Gwt   parte 01
Gwt parte 01
 
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
 
Configurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do EclipseConfigurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do Eclipse
 
CodeIgniter 4 - Introdução
CodeIgniter 4 - IntroduçãoCodeIgniter 4 - Introdução
CodeIgniter 4 - Introdução
 
Testes Automatizados
Testes AutomatizadosTestes Automatizados
Testes Automatizados
 
TheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passosTheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passos
 
Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
 
TDC2016SP - Trilha Node.Js
TDC2016SP - Trilha Node.JsTDC2016SP - Trilha Node.Js
TDC2016SP - Trilha Node.Js
 
TDC2016SP - Trilha Microservices
TDC2016SP - Trilha MicroservicesTDC2016SP - Trilha Microservices
TDC2016SP - Trilha Microservices
 
JavaScript Moderno
JavaScript ModernoJavaScript Moderno
JavaScript Moderno
 
TDC2016SP - Trilha Microservices
TDC2016SP - Trilha MicroservicesTDC2016SP - Trilha Microservices
TDC2016SP - Trilha Microservices
 
Sua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shiftSua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shift
 
TDC 2012 - JDF
TDC 2012 - JDFTDC 2012 - JDF
TDC 2012 - JDF
 
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
 
Comunicação em tempo real com Node.js
Comunicação em tempo real com Node.jsComunicação em tempo real com Node.js
Comunicação em tempo real com Node.js
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma Java
 
Desenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFXDesenvolvimento rápido de aplicações com JEE e JavaFX
Desenvolvimento rápido de aplicações com JEE e JavaFX
 
Introdução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações webIntrodução ao desenvolvimento de aplicações web
Introdução ao desenvolvimento de aplicações web
 
TDC2016SP - Trilha Node.Js
TDC2016SP - Trilha Node.JsTDC2016SP - Trilha Node.Js
TDC2016SP - Trilha Node.Js
 
Clean Architecture com .NET Core
Clean Architecture com .NET CoreClean Architecture com .NET Core
Clean Architecture com .NET Core
 

Similaire à Implementando aplicativos Web com JSF

TDC2010 - Turbinando sua Aplicação com CDI
TDC2010 - Turbinando sua Aplicação com CDITDC2010 - Turbinando sua Aplicação com CDI
TDC2010 - Turbinando sua Aplicação com CDI
Rodrigo Cândido da Silva
 
Richfaces 4 - Desenvolvimento JSF mais rico
Richfaces 4 - Desenvolvimento JSF mais ricoRichfaces 4 - Desenvolvimento JSF mais rico
Richfaces 4 - Desenvolvimento JSF mais rico
Eder Magalhães
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
Cleber Dantas
 
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA  TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
Rodrigo Cândido da Silva
 

Similaire à Implementando aplicativos Web com JSF (20)

Introducao Spring ROO
Introducao Spring ROOIntroducao Spring ROO
Introducao Spring ROO
 
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterGerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
 
Arquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App EngineArquiteturas Java EE no Google App Engine
Arquiteturas Java EE no Google App Engine
 
TDC2010 - Turbinando sua Aplicação com CDI
TDC2010 - Turbinando sua Aplicação com CDITDC2010 - Turbinando sua Aplicação com CDI
TDC2010 - Turbinando sua Aplicação com CDI
 
Utilizando a API do Roslyn, o novo compilador do C#
Utilizando a API do Roslyn, o novo compilador do C#Utilizando a API do Roslyn, o novo compilador do C#
Utilizando a API do Roslyn, o novo compilador do C#
 
Richfaces 4 - Desenvolvimento JSF mais rico
Richfaces 4 - Desenvolvimento JSF mais ricoRichfaces 4 - Desenvolvimento JSF mais rico
Richfaces 4 - Desenvolvimento JSF mais rico
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
 
Programação Funcional usando F#
Programação Funcional usando F#Programação Funcional usando F#
Programação Funcional usando F#
 
Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
JBoss Forge TDC - 2012 Florianópolis
JBoss Forge TDC - 2012 FlorianópolisJBoss Forge TDC - 2012 Florianópolis
JBoss Forge TDC - 2012 Florianópolis
 
Google AppEngine and JEE
Google AppEngine and JEEGoogle AppEngine and JEE
Google AppEngine and JEE
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
 
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA  TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
TDC2012 - Implementando aplicativos Web com JSF, CDI e JPA
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
JSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaJSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com Java
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem Prática
 
Combatendo o Código Procedural - TDC 2012 Florianópolis - Trilha PHP
Combatendo o Código Procedural - TDC 2012 Florianópolis - Trilha PHPCombatendo o Código Procedural - TDC 2012 Florianópolis - Trilha PHP
Combatendo o Código Procedural - TDC 2012 Florianópolis - Trilha PHP
 
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
 

Plus de Otávio Santana

Plus de Otávio Santana (20)

NoSQL design pitfalls with Java
NoSQL design pitfalls with JavaNoSQL design pitfalls with Java
NoSQL design pitfalls with Java
 
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
 
Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]
 
Arquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com JavaArquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com Java
 
Build, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to endBuild, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to end
 
Jakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the CloudJakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
 
ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?
 
Jakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud AgeJakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud Age
 
Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0
 
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
 
Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]
 
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
 
The new generation of data persistence with graph
The new generation of data persistence with graphThe new generation of data persistence with graph
The new generation of data persistence with graph
 
Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11
 
Stateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - GuatemalaStateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - Guatemala
 
Stateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - MexicoStateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - Mexico
 
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabaseEclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
 
Polyglot persistence
Polyglot persistencePolyglot persistence
Polyglot persistence
 
Management 3.0 and open source
Management 3.0 and open sourceManagement 3.0 and open source
Management 3.0 and open source
 
Building a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EEBuilding a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EE
 

Dernier

Dernier (8)

ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Implementando aplicativos Web com JSF

  • 1. Implementando aplicativos Web com JSF Trilha – Java EE University Otávio Gonçalves de Santana (otaviojava) Globalcode – Open4education
  • 2. Agenda A importância da interface para o usuário MVC - Dividir e conquistar Eis que surge o JSF Integra com CSS, JavaScript, ajax, html 5... Você pode chamar atributos e métodos pelo JSF Escopo Enviando e recuperando objetos com Converter Validando informações com o Validator Economizando código com o Facelets Criando uma vez e usando quantas quiser integrando javascript, css, jquery e html 5 no jsf Frameworks em JSF E que venha o código Globalcode – Open4education
  • 3. A importância da interface para o usuário Aonde eles interagem Realiza as tarefas Visão aos usuários Globalcode – Open4education
  • 4. A importância da interface para o usuário Usuabilidade Fácil de Interagir Amigável Globalcode – Open4education
  • 5. A importância da interface para o usuário Devem evoluir com o Tempo! Menos é mais Globalcode – Open4education
  • 6. A importância da interface para o usuário Qual você usaria ? Globalcode – Open4education
  • 7. A importância da interface para o usuário Qual você usaria ? Globalcode – Open4education
  • 8. A importância da interface para o usuário Mas não adianta ser bonito e não funcionar. Globalcode – Open4education
  • 9. MVC - Dividir e conquistar Beleza vs Funcionamento Código Organizado Manutenção Fácil Sabe aonde achar o erro Globalcode – Open4education
  • 10. Eis que surge o JSF ( Java Server Faces) Java Especificação Integração Ajax Nativo Globalcode – Open4education
  • 11. Integração Globalcode – Open4education
  • 12. Chamando Atributos e métodos Globalcode – Open4education
  • 13. Chamando Atributos e métodos Globalcode – Open4education
  • 14. Escopo Globalcode – Open4education
  • 15. Enviando e recuperando Objetos Converter Você programa Java Enviar-Receber Informações Globalcode – Open4education
  • 16. Enviando e recuperando Objetos Globalcode – Open4education
  • 17. Enviando e recuperando Objetos Globalcode – Open4education
  • 18. Validando informações com o Validator Campo Obrigatório Tipo de Informação Coerência Globalcode – Open4education
  • 19. Economizando código com o Facelets Economiza Código Evita “mokey codes” Previne dores de Cabeça Manutenção rápida Globalcode – Open4education
  • 20. Economizando código com o Facelets Globalcode – Open4education
  • 21. Economizando código com o Facelets Criar uma nova página Globalcode – Open4education
  • 22. Economizando código com o Facelets Se forem mais 20 páginas Globalcode – Open4education
  • 23. Economizando código com o Facelets Agora tem que modificar o rodapé Globalcode – Open4education
  • 24. Economizando código com o Facelets Com Facelets fica mais fácil Globalcode – Open4education
  • 25. Economizando código com o Facelets Com Facelets fica mais fácil Globalcode – Open4education
  • 26. Criando uma vez e usando quantas quiser Composite Component Globalcode – Open4education
  • 27. Frameworks em JSF Basta baixar e usar Globalcode – Open4education
  • 28. E que venha o código Demonstração Globalcode – Open4education
  • 29. Obrigado Otávio Santana @otaviojava otaviojava@java.net http://otaviosantana.blogspot.com.br/ https://github.com/otaviojava/ Globalcode – Open4education