SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
JBOSS SEAM
Projeto SETEC/SIGA/SIEP
Eder Nogueira
Camila Yokoigawa
Natal, Maio de 2007
Sumário
1. Introdução ao Jboss Seam.
2. Seam: Integração EJB 3.0 e JSF
3. Integração com o AJAX
4. Contextos Seam
5. Conclusões.
Introdução ao Jboss Seam
● Desenvolvido por Gavin King, criador do Hibernate
● Integração entre EJB3 e JSF através de componentes
contextuais.
● Integrante do JBoss Enterprise Middleware Suite – JEMS
● Agrega outras tecnologias: AJAX, jBPM,Web Services, JMS,
Portlets
Introdução ao Jboss Seam
Seam: Integração EJB 3.0 e JSF
● JSF e EJB 3.0 são duas das mais novas "propriedades" do
JAVA EE 5;
● EJB 3 é um novíssimo modelo de componente de negócio
do lado do servidor e lógica de persistência e o JSF é um
ótimo modelo de componente para a camada de
apresentação;
Seam: Integração EJB 3.0 e JSF
● Infelizmente, nenhum deles estão habilitados para resolver
todos os problemas por si só trabalhando melhor juntos;
● A especificação JAVA EE 5 não provê uma maneira padrão
para integrar os dois modelos de componentes;
Seam: Integração EJB 3.0 e JSF
● Felizmente, os criadores de ambos os modelos previram
esta situação e forneceram pontos padrão de extensão para
reservar extensão e integração de outras soluções.
● Seam unifica o modelo de componente de JSF e EJB3,
eliminando a "colagem de código" e deixando o
desenvolvedor pensar sobre o problema da camada de
negócio.
Integração com o AJAX
● Seam suporta 2 soluções livres JSF baseadas em AJAX:
ICEfaces e Ajax4JSF.
● Estas soluções deixam você adicionar potencialidades para
sua interface sem a necessidade de escrever código
JavaScript.
● Seam também fornece uma camada remota e interna
JavaScript para componentes EJB3.
Integração com o AJAX
● Clientes AJAX podem facilmente chamar componentes do
lado do servidor e sobrescreve-los para tópicos JMS, sem a
necessidade de uma camada de ação intermediária.
Contextos Seam
● Os dois conceitos centrais no Seam são a noção de
contexto e de componente.
● Os componentes Seam são POJOs (Plain Old Java
Objects), Java Beans ou EJB3 Beans. Seam suporta os
seguintes componentes:
Contextos Seam
● O framework provê uma integração entre as
camadas de uma aplicação web. Porque ele
elimina os velhos problemas de uma
aplicação web não ter acesso ao contexto da
camada de negócio e vice/versa.
Contextos Seam
● Os contextos básicos do Seam são:
Stateless Context;
Event(request) context;
Page Context;
Conversation Context;
Session Context;
Business Process Context;
Application Context;
Contextos Seam
● Stateless Context: Mesmo conceito do Stateless
do EJB criado justamente para integração
com este tipo de EJB.
● Event Context: Como o nome mesmo diz,
os objetos registrados neste contexto vão
estar disponíveis durante a execução de um
determinado evento.
Contextos Seam
● Page Context: Contexto já conhecido por todos
que trabalham com aplicações web, esta
associado ao processo de renderização,
carregamento, lauding de uma página.
● Session Context:Este também é muito
conhecido por todos que trabalham com
aplicações web.
Contextos Seam
● Em resumo, este contexto inicia quando
acessamos a primeira tela da aplicação e só
será destruído quando fecharmos nosso
browser ou fazermos um logoff
implementado pela aplicação.
Contextos Seam
● Conversation Context: É um dos contextos que
diferencia o Seam de qualquer outro
framework existente no mercado.Com este
contexto podemos criar unidades de
conversação e registrar nestas unidades
todos os objetos e serviços que a aplicação
vai necessitar usar quando a mesma estiver
sendo executada sobre este contexto
Contextos Seam
● Neste contexto mesmo outras instâncias da
aplicação sendo acessadas em janelas
diferentes não terão acesso aos artefatos
registrados no contexto da outra, ou seja a
cada nova instância da aplicação em uma
nova janela se caracteriza como uma
instância independente, assim uma não terá
acesso as informações da outra mesmo
sendo executadas na mesma instância do
browser.
Contextos Seam
● Business Process Context: Mais um contexto
novo criado pelo Seam. Foi criado
especialmente para trabalharmos com fluxos
de trabalho(workflow) e garante para nós
que qualquer objeto ou serviço registrado
neste contexto vai estar disponível até o fim
do fluxo.
Contextos Seam
● O mesmo fica disponível para múltiplas
interações e múltiplos usuários e seu estado
é persistente;
● Ou seja, se eu fechar a aplicação e no dia
seguinte acessar ela novamente os objetos
registrados no fluxo em questão estarão ali
com as informações que foram deixadas
pela ultima vez;
Contextos Seam
● Application Context: E por ultimo, o já conhecido
contexto de aplicação, tudo que registrarmos
neste contexto fica disponível para todos que
acessarem a mesma, ou seja devemos
registrar neste contexto somente os serviços
que serão acessados por todos e que são
imutáveis , pois este contexto só é atualizado
no “startup” do servidor web.
Conclusões
● Base para o padrão web beans( padrão de
frameworks da web 2.0) JSR 299
● Integração de tecnologias padrão de mercado
como EJB3,JSF, jBPM
● Contexto web e da aplicação( EJB ) integrados
● Uso constante de anotações para configuração das
aplicações
● Aprendizagem fácil por já usar frameworks
conhecidos como JSF, EJB3, Hibernate e JBPM
● Necessidade de conhecermos a fundo das
tecnologias Java 5 JEE 5
Referências
http://juliocsmac.blogspot.com
http://docs.jboss.com/seam/1.2.1.GA/reference/en/
http://www.ime.usp.br/~reverbel/SMA-
6/Slides/seminarios/jbossSeam.pdf

Más contenido relacionado

La actualidad más candente

A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front endDouglas Matoso
 
JSP - Java Serves Pages
JSP - Java Serves PagesJSP - Java Serves Pages
JSP - Java Serves PagesAmanda Luz
 
ASP.NET MVC para desenvolvedores Web Forms (TechEd)
ASP.NET MVC para desenvolvedores Web Forms (TechEd)ASP.NET MVC para desenvolvedores Web Forms (TechEd)
ASP.NET MVC para desenvolvedores Web Forms (TechEd)Giovanni Bassi
 
WSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatWSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatEdgar Silva
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFEmmanuel Neri
 
ASP.NET 5 - Novidades do Desenvolvimento Web em .NET
ASP.NET 5 - Novidades do Desenvolvimento Web em .NETASP.NET 5 - Novidades do Desenvolvimento Web em .NET
ASP.NET 5 - Novidades do Desenvolvimento Web em .NETRenato Groff
 
A nova geração da arquitetura web para a era da nuvem
A nova geração da arquitetura web para a era da nuvemA nova geração da arquitetura web para a era da nuvem
A nova geração da arquitetura web para a era da nuvemCloves Moreira Junior
 
Aplicações de tempo real com Meteor.js
Aplicações de tempo real com Meteor.jsAplicações de tempo real com Meteor.js
Aplicações de tempo real com Meteor.jsRafael Sales
 
Web socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webWeb socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webJackson Veroneze
 
Web socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webWeb socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webMario Mendonça
 
Aula Introdução a VRaptor 4 - Pós Java UTFPR
Aula Introdução a VRaptor 4 - Pós Java UTFPRAula Introdução a VRaptor 4 - Pós Java UTFPR
Aula Introdução a VRaptor 4 - Pós Java UTFPRAndré Luiz Forchesatto
 
Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Lucas Augusto Carvalho
 

La actualidad más candente (20)

A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
 
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
 
Dojo react
Dojo reactDojo react
Dojo react
 
JSP - Java Serves Pages
JSP - Java Serves PagesJSP - Java Serves Pages
JSP - Java Serves Pages
 
Integração e APIs com Mulesoft
Integração e APIs com MulesoftIntegração e APIs com Mulesoft
Integração e APIs com Mulesoft
 
ASP.NET MVC para desenvolvedores Web Forms (TechEd)
ASP.NET MVC para desenvolvedores Web Forms (TechEd)ASP.NET MVC para desenvolvedores Web Forms (TechEd)
ASP.NET MVC para desenvolvedores Web Forms (TechEd)
 
Introdução ao Nodejs
Introdução ao NodejsIntrodução ao Nodejs
Introdução ao Nodejs
 
WSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatWSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao Tomcat
 
EJB 3.1
EJB 3.1EJB 3.1
EJB 3.1
 
Estudo de caso ASP.NET MVC e Silverlight
Estudo de caso ASP.NET MVC e SilverlightEstudo de caso ASP.NET MVC e Silverlight
Estudo de caso ASP.NET MVC e Silverlight
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSF
 
ASP.NET 5 - Novidades do Desenvolvimento Web em .NET
ASP.NET 5 - Novidades do Desenvolvimento Web em .NETASP.NET 5 - Novidades do Desenvolvimento Web em .NET
ASP.NET 5 - Novidades do Desenvolvimento Web em .NET
 
A nova geração da arquitetura web para a era da nuvem
A nova geração da arquitetura web para a era da nuvemA nova geração da arquitetura web para a era da nuvem
A nova geração da arquitetura web para a era da nuvem
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
Aplicações de tempo real com Meteor.js
Aplicações de tempo real com Meteor.jsAplicações de tempo real com Meteor.js
Aplicações de tempo real com Meteor.js
 
Micro serviços ppt
Micro serviços pptMicro serviços ppt
Micro serviços ppt
 
Web socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webWeb socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a web
 
Web socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a webWeb socket - Trazendo soquetes para a web
Web socket - Trazendo soquetes para a web
 
Aula Introdução a VRaptor 4 - Pós Java UTFPR
Aula Introdução a VRaptor 4 - Pós Java UTFPRAula Introdução a VRaptor 4 - Pós Java UTFPR
Aula Introdução a VRaptor 4 - Pós Java UTFPR
 
Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5Palestra - Symfony Framework MVC PHP 5
Palestra - Symfony Framework MVC PHP 5
 

Similar a Tutorial JBoss Seam

Similar a Tutorial JBoss Seam (20)

Jboss Seam
Jboss SeamJboss Seam
Jboss Seam
 
J boss seam
J boss seamJ boss seam
J boss seam
 
1409243945064
14092439450641409243945064
1409243945064
 
Jsf
JsfJsf
Jsf
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
 
Asp net mvc
Asp net mvcAsp net mvc
Asp net mvc
 
Asp.net
Asp.netAsp.net
Asp.net
 
Maverick v1.0
Maverick v1.0Maverick v1.0
Maverick v1.0
 
TDC 2008 JBoss Seam
TDC 2008 JBoss SeamTDC 2008 JBoss Seam
TDC 2008 JBoss Seam
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias Web
 
MODELO ASP
MODELO ASPMODELO ASP
MODELO ASP
 
Framework struts2v2.5
Framework struts2v2.5Framework struts2v2.5
Framework struts2v2.5
 
Service Oriented Front-End Architecture
Service Oriented Front-End ArchitectureService Oriented Front-End Architecture
Service Oriented Front-End Architecture
 
EJB
EJBEJB
EJB
 
Introdução ao JBoss Fuse 6.x: criação e implantação de um serviço CXF
Introdução ao JBoss Fuse 6.x: criação e implantação de um serviço CXFIntrodução ao JBoss Fuse 6.x: criação e implantação de um serviço CXF
Introdução ao JBoss Fuse 6.x: criação e implantação de um serviço CXF
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Faces
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Mod06 licao01-apostila
Mod06 licao01-apostilaMod06 licao01-apostila
Mod06 licao01-apostila
 
Como criar interfaces gráficas com android
Como criar interfaces gráficas com androidComo criar interfaces gráficas com android
Como criar interfaces gráficas com android
 
Parte 1 Introducao
Parte 1 IntroducaoParte 1 Introducao
Parte 1 Introducao
 

Más de Eder Nogueira

DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII Eder Nogueira
 
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YIIDETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YIIEder Nogueira
 
Títulos de Renda Fixa
Títulos de Renda FixaTítulos de Renda Fixa
Títulos de Renda FixaEder Nogueira
 
HIstóricos e Causas da Inflação
HIstóricos e Causas da InflaçãoHIstóricos e Causas da Inflação
HIstóricos e Causas da InflaçãoEder Nogueira
 
Kant e a Ética do Dever
Kant e a Ética do DeverKant e a Ética do Dever
Kant e a Ética do DeverEder Nogueira
 
Projeto Político Pedagógico - Parte I - Versão FULL
Projeto Político Pedagógico - Parte I - Versão FULLProjeto Político Pedagógico - Parte I - Versão FULL
Projeto Político Pedagógico - Parte I - Versão FULLEder Nogueira
 
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAR
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLARPROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAR
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAREder Nogueira
 
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTESATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTESEder Nogueira
 
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAIS
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAISATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAIS
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAISEder Nogueira
 
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOS
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOSAPRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOS
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOSEder Nogueira
 
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLA
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLAAPRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLA
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLAEder Nogueira
 
CERTIFICAÇÃO DE QUALIDADE: ISO
CERTIFICAÇÃO DE QUALIDADE: ISOCERTIFICAÇÃO DE QUALIDADE: ISO
CERTIFICAÇÃO DE QUALIDADE: ISOEder Nogueira
 
Ferramentas Colaborativas
Ferramentas ColaborativasFerramentas Colaborativas
Ferramentas ColaborativasEder Nogueira
 
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...Eder Nogueira
 
Padrão de Projeto Mediator
Padrão de Projeto MediatorPadrão de Projeto Mediator
Padrão de Projeto MediatorEder Nogueira
 
JAVA MEDIA FRAMEWORK
JAVA MEDIA FRAMEWORKJAVA MEDIA FRAMEWORK
JAVA MEDIA FRAMEWORKEder Nogueira
 
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...Eder Nogueira
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão GeralEder Nogueira
 
Abordagem humanística da administração e decorrências da teoria das relações ...
Abordagem humanística da administração e decorrências da teoria das relações ...Abordagem humanística da administração e decorrências da teoria das relações ...
Abordagem humanística da administração e decorrências da teoria das relações ...Eder Nogueira
 

Más de Eder Nogueira (20)

COBIT 5
COBIT 5 COBIT 5
COBIT 5
 
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
 
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YIIDETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
DETRAN MAIS FÁCIL: CONSTRUÇÃO DE APP WEB USANDO O FRAMEWORK ÁGIL YII
 
Títulos de Renda Fixa
Títulos de Renda FixaTítulos de Renda Fixa
Títulos de Renda Fixa
 
HIstóricos e Causas da Inflação
HIstóricos e Causas da InflaçãoHIstóricos e Causas da Inflação
HIstóricos e Causas da Inflação
 
Kant e a Ética do Dever
Kant e a Ética do DeverKant e a Ética do Dever
Kant e a Ética do Dever
 
Projeto Político Pedagógico - Parte I - Versão FULL
Projeto Político Pedagógico - Parte I - Versão FULLProjeto Político Pedagógico - Parte I - Versão FULL
Projeto Político Pedagógico - Parte I - Versão FULL
 
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAR
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLARPROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAR
PROJETO POLÍTICO PEDAGÓGICO - DIAGNÓSTICO ESCOLAR
 
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTESATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
 
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAIS
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAISATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAIS
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - PAIS
 
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOS
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOSAPRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOS
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ALUNOS
 
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLA
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLAAPRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLA
APRESENTAÇÃO DO PPP ESCOLA MUN. PROF. LUIZ MARANHÃO FILHO PARTE I - ESCOLA
 
CERTIFICAÇÃO DE QUALIDADE: ISO
CERTIFICAÇÃO DE QUALIDADE: ISOCERTIFICAÇÃO DE QUALIDADE: ISO
CERTIFICAÇÃO DE QUALIDADE: ISO
 
Ferramentas Colaborativas
Ferramentas ColaborativasFerramentas Colaborativas
Ferramentas Colaborativas
 
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
UTILIZANDO O FRAMEWORK JBOSS SEAM PARA ACELERAR O DESENVOLVIMENTO DE APLICAÇÕ...
 
Padrão de Projeto Mediator
Padrão de Projeto MediatorPadrão de Projeto Mediator
Padrão de Projeto Mediator
 
JAVA MEDIA FRAMEWORK
JAVA MEDIA FRAMEWORKJAVA MEDIA FRAMEWORK
JAVA MEDIA FRAMEWORK
 
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...
PROGRAMAÇÃO DECLARATIVA COM JAVAFX: UM PARADIGMA NA CONSTRUÇÃO DE INTERFACES ...
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão Geral
 
Abordagem humanística da administração e decorrências da teoria das relações ...
Abordagem humanística da administração e decorrências da teoria das relações ...Abordagem humanística da administração e decorrências da teoria das relações ...
Abordagem humanística da administração e decorrências da teoria das relações ...
 

Tutorial JBoss Seam

  • 1. JBOSS SEAM Projeto SETEC/SIGA/SIEP Eder Nogueira Camila Yokoigawa Natal, Maio de 2007
  • 2. Sumário 1. Introdução ao Jboss Seam. 2. Seam: Integração EJB 3.0 e JSF 3. Integração com o AJAX 4. Contextos Seam 5. Conclusões.
  • 3. Introdução ao Jboss Seam ● Desenvolvido por Gavin King, criador do Hibernate ● Integração entre EJB3 e JSF através de componentes contextuais. ● Integrante do JBoss Enterprise Middleware Suite – JEMS ● Agrega outras tecnologias: AJAX, jBPM,Web Services, JMS, Portlets
  • 5. Seam: Integração EJB 3.0 e JSF ● JSF e EJB 3.0 são duas das mais novas "propriedades" do JAVA EE 5; ● EJB 3 é um novíssimo modelo de componente de negócio do lado do servidor e lógica de persistência e o JSF é um ótimo modelo de componente para a camada de apresentação;
  • 6. Seam: Integração EJB 3.0 e JSF ● Infelizmente, nenhum deles estão habilitados para resolver todos os problemas por si só trabalhando melhor juntos; ● A especificação JAVA EE 5 não provê uma maneira padrão para integrar os dois modelos de componentes;
  • 7. Seam: Integração EJB 3.0 e JSF ● Felizmente, os criadores de ambos os modelos previram esta situação e forneceram pontos padrão de extensão para reservar extensão e integração de outras soluções. ● Seam unifica o modelo de componente de JSF e EJB3, eliminando a "colagem de código" e deixando o desenvolvedor pensar sobre o problema da camada de negócio.
  • 8. Integração com o AJAX ● Seam suporta 2 soluções livres JSF baseadas em AJAX: ICEfaces e Ajax4JSF. ● Estas soluções deixam você adicionar potencialidades para sua interface sem a necessidade de escrever código JavaScript. ● Seam também fornece uma camada remota e interna JavaScript para componentes EJB3.
  • 9. Integração com o AJAX ● Clientes AJAX podem facilmente chamar componentes do lado do servidor e sobrescreve-los para tópicos JMS, sem a necessidade de uma camada de ação intermediária.
  • 10. Contextos Seam ● Os dois conceitos centrais no Seam são a noção de contexto e de componente. ● Os componentes Seam são POJOs (Plain Old Java Objects), Java Beans ou EJB3 Beans. Seam suporta os seguintes componentes:
  • 11. Contextos Seam ● O framework provê uma integração entre as camadas de uma aplicação web. Porque ele elimina os velhos problemas de uma aplicação web não ter acesso ao contexto da camada de negócio e vice/versa.
  • 12. Contextos Seam ● Os contextos básicos do Seam são: Stateless Context; Event(request) context; Page Context; Conversation Context; Session Context; Business Process Context; Application Context;
  • 13. Contextos Seam ● Stateless Context: Mesmo conceito do Stateless do EJB criado justamente para integração com este tipo de EJB. ● Event Context: Como o nome mesmo diz, os objetos registrados neste contexto vão estar disponíveis durante a execução de um determinado evento.
  • 14. Contextos Seam ● Page Context: Contexto já conhecido por todos que trabalham com aplicações web, esta associado ao processo de renderização, carregamento, lauding de uma página. ● Session Context:Este também é muito conhecido por todos que trabalham com aplicações web.
  • 15. Contextos Seam ● Em resumo, este contexto inicia quando acessamos a primeira tela da aplicação e só será destruído quando fecharmos nosso browser ou fazermos um logoff implementado pela aplicação.
  • 16. Contextos Seam ● Conversation Context: É um dos contextos que diferencia o Seam de qualquer outro framework existente no mercado.Com este contexto podemos criar unidades de conversação e registrar nestas unidades todos os objetos e serviços que a aplicação vai necessitar usar quando a mesma estiver sendo executada sobre este contexto
  • 17. Contextos Seam ● Neste contexto mesmo outras instâncias da aplicação sendo acessadas em janelas diferentes não terão acesso aos artefatos registrados no contexto da outra, ou seja a cada nova instância da aplicação em uma nova janela se caracteriza como uma instância independente, assim uma não terá acesso as informações da outra mesmo sendo executadas na mesma instância do browser.
  • 18. Contextos Seam ● Business Process Context: Mais um contexto novo criado pelo Seam. Foi criado especialmente para trabalharmos com fluxos de trabalho(workflow) e garante para nós que qualquer objeto ou serviço registrado neste contexto vai estar disponível até o fim do fluxo.
  • 19. Contextos Seam ● O mesmo fica disponível para múltiplas interações e múltiplos usuários e seu estado é persistente; ● Ou seja, se eu fechar a aplicação e no dia seguinte acessar ela novamente os objetos registrados no fluxo em questão estarão ali com as informações que foram deixadas pela ultima vez;
  • 20. Contextos Seam ● Application Context: E por ultimo, o já conhecido contexto de aplicação, tudo que registrarmos neste contexto fica disponível para todos que acessarem a mesma, ou seja devemos registrar neste contexto somente os serviços que serão acessados por todos e que são imutáveis , pois este contexto só é atualizado no “startup” do servidor web.
  • 21. Conclusões ● Base para o padrão web beans( padrão de frameworks da web 2.0) JSR 299 ● Integração de tecnologias padrão de mercado como EJB3,JSF, jBPM ● Contexto web e da aplicação( EJB ) integrados ● Uso constante de anotações para configuração das aplicações ● Aprendizagem fácil por já usar frameworks conhecidos como JSF, EJB3, Hibernate e JBPM ● Necessidade de conhecermos a fundo das tecnologias Java 5 JEE 5