jboss seamreverbel/sma-06/slides/... · 2006-12-20 · introdução desenvolvido por gavin king,...
TRANSCRIPT
![Page 1: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/1.jpg)
JBoss SeamUm framework para Java EE 5
[ Tiago Motta Jorge ]
![Page 2: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/2.jpg)
Outline
● Introdução● Conceitos básicos● Exemplos básicos● Conceitos Avançados● JSR299: WebBeans● Considerações finais
![Page 3: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/3.jpg)
Introdução
● Desenvolvido por Gavin King, criador do
Hibernate● seam == emenda● Integração entre EJB3 e JSF através de
componentes contextuais.
![Page 4: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/4.jpg)
Introdução
● EJB3: componentes de negócio● JSF: componentes visuais
Integração não definida na especificação da plataforma
Java EE 5!
![Page 5: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/5.jpg)
Introdução
● Integrante do JBoss Enterprise Middleware Suite – JEMS
● Agrega outras tecnologias: AJAX, jBPM,
Web Services, JMS, Portlets
![Page 6: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/6.jpg)
Introdução
JSP Facelets Portal
JSF
Seam
EJB3 jBPM Hibernate
![Page 7: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/7.jpg)
Introdução
JSP Facelets Portal
JSF
Seam
EJB3 jBPM Hibernate
presentationtier
![Page 8: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/8.jpg)
Introdução
JSP Facelets Portal
JSF
Seam
EJB3 jBPM Hibernate
request controller
![Page 9: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/9.jpg)
Introdução
JSP Facelets Portal
JSF
Seam
EJB3 jBPM Hibernate
context management
![Page 10: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/10.jpg)
Introdução
JSP Facelets Portal
JSF
Seam
EJB3 jBPM Hibernate state management
![Page 11: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/11.jpg)
Conceitos básicos
contextos
injeção
“ejeção”
+
![Page 12: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/12.jpg)
Conceitos básicos
contextos
injeção
“ejeção”
+delimitadores para a existência de objetos
![Page 13: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/13.jpg)
Conceitos básicos
contextos
injeção
“ejeção”
+delimitadores para a existência de objetos
ciclo de vida gerenciadopelo framework
![Page 14: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/14.jpg)
Conceitos básicos
contextos
injeção
“ejeção”
+delimitadores para a existência de objetos
ciclo de vida gerenciadopelo framework
estende o conceito de IoC!
![Page 15: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/15.jpg)
Conceitos básicos
componentes seam
![Page 16: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/16.jpg)
Conceitos básicos
componentes seam
associados a contextos
![Page 17: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/17.jpg)
Conceitos básicos
componentes seam
associados a contextos
identificados por nomes
![Page 18: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/18.jpg)
Conceitos básicos
Contextos definidos pelo Seam:
Stateless, Event, Page, Conversation, Session, Application, Business Process
![Page 19: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/19.jpg)
Exemplos básicos
(1) seam-registration
![Page 20: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/20.jpg)
Exemplos básicos
(1) seam-registration
(2) seam-messages
![Page 21: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/21.jpg)
Conceitos básicos
Contextos
Event: requisição
Session: sessão do usuário
![Page 22: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/22.jpg)
Conceitos avançados
Contextos
Conversation: unidade de interação
Business Process: processo de negócio de longa duração
![Page 23: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/23.jpg)
Conceitos avançados
Contextos
Conversation: unidade de interação
Business Process: processo de negócio de longa duração
jBPM
![Page 24: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/24.jpg)
Conceitos avançados
jBPM: provê funcionalidadesofisticada para lidar com workflow e gerenciamento de tarefas
![Page 25: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/25.jpg)
Conceitos avançados
jBPM: provê funcionalidadesofisticada para lidar com workflow e gerenciamento de tarefas
Exemplo: todo list
![Page 26: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/26.jpg)
Conceitos avançados
jPDL: provê funcionalidadesofisticada para lidar com fluxo de páginas em uma aplicaçãocom uma navegação mais restrita
![Page 27: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/27.jpg)
Conceitos avançados
jPDL: provê funcionalidadesofisticada para lidar com fluxo de páginas em uma aplicaçãocom uma navegação mais restrita
Exemplo: numberguess
![Page 28: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/28.jpg)
Conceitos avançados
Aplicação completa: booking
![Page 29: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/29.jpg)
Conceitos avançados
Testes suportados: unidade e integração
![Page 30: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/30.jpg)
Conceitos avançados
Testes facilitados por:
(1) natureza POJO doscomponentes Seam
(2) bijeção e controle sobre o acesso aos componentes
![Page 31: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/31.jpg)
Conceitos avançados
Possibilita a execução dos testes fora do ambiente de execução
normal!
![Page 32: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/32.jpg)
Conceitos avançados
Seam debug page!
![Page 33: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/33.jpg)
Conceitos avançados
Seam debug page!
- permite inspecionar qualquer componente seam de qualquer contexto associado com a sua sessão atual
![Page 34: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/34.jpg)
JSR299: WebBeans
- esforço no Java CommunityProcess para padronizar o modelode programação do Seam naplataforma Java EE 5
![Page 35: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/35.jpg)
JSR299: WebBeans
- esforço no Java CommunityProcess para padronizar o modelode programação do Seam naplataforma Java EE 5
- empresas envolvidas: JBoss,Google, Oracle, Borland e Sun
![Page 36: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/36.jpg)
JSR299: WebBeans
- visa padronizar as melhorescaracterísticas do JBoss Seam,Oracle Application DevelopmentFramework e Apache Struts Shale
![Page 37: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/37.jpg)
Considerações finais
- JBoss Seam faz todo o “trabalhosujo” da integração entre JSF eEJB3, deixando o desenvolvedormais concentrado no domínio denegócios sendo modelado.
![Page 38: JBoss Seamreverbel/SMA-06/Slides/... · 2006-12-20 · Introdução Desenvolvido por Gavin King, criador do Hibernate seam == emenda Integração entre EJB3 e JSF através de componentes](https://reader030.vdocuments.site/reader030/viewer/2022040602/5e9820eaec46794f456e53c4/html5/thumbnails/38.jpg)
Referências
● Revista Mundo Java #19 – ano IV
● http://labs.jboss.com/portal/jbossseam/gettingstarted
● http://docs.jboss.com/seam/1.0.0.GA/reference/en/html/tutorial.html
● http://docs.jboss.com/seam/1.0.0.GA/reference/en/html/index.html