SlideShare a Scribd company logo
1 of 15
Do Seam à CDI (JSR-299)Gilliard Cordeiro
Apresentação Gilliard Cordeiro  http://gilliard.eti.br gscordeiro@gmail.com Analista de Sistemas pela UFMS Especialista em Eng. de Software pela UNIDERP Coordenador de Novas Tecnologias no Tribunal de Justiça de MS Instrutor em cursos de Java no SENAC Um dos coordenador do JUGMS
JavaEE nos trilhos... JavaEE 5 e 6 voltados para a produtividade JavaEE 6 “aparando arestas” em JSF e JPA Criação de perfis que separam o JavaEE em partes menores Adição da CDI, que adiciona à stack padrão funcionalidades que usuários de Seam e Spring gostariam há um bom tempo
Composição do perfil Web do JavaEE Servlet 3.0 JavaServerPages (JSP) 2.2 ExpressionLanguage (EL) 2.2 Standard Tag Library for JavaServer Pages (JSTL) 1.2 JavaServerFaces (JSF) 2.0 Common Annotations for Java Platform (JSR-250) 1.1 Enterprise JavaBeans (EJB) 3.1 Lite Java Transaction API (JTA) 1.1 Java Persistence API (JPA) 2.0 BeanValidation 1.0 JSR-299 1.0 JSR-330 1.0 Outros... JavaEE separado em perfis
JSR-299: ContextandDependencyInjection for Java EE Vários nomes envolvidos na especificação
JSR-299: ContextandDependencyInjection for Java EE Vários nomes envolvidos na especificação
JSR-299: ContextandDependencyInjection for Java EE Características da CDI Gerencia o ciclo de vida de objetos statefull Provê um mecanismo de DI typesafe Disponibiliza mecanismo de eventos facilitando o desenvolvimento com baixo acoplamento Tem um mecanismo de interceptors e decorators Possibilita a criação de extensões portáveis para qualquer implementação de CDI
JSR-299: ContextandDependencyInjection for Java EE Com a CDI, o que será do Seam? Apesar de compartilhar muitos conceitos, as duas coisas continuarão existindo Seam PDF jBPM Regras E-mail Outros Weld CDI
JSR-299: ContextandDependencyInjection for Java EE Com a CDI, o que será do Seam? O Seam é um conjunto maior de funcionalidades, enquanto a CDI representa apenas o “core” A CDI não simplesmente padronizou o core do Seam; se baseou em idéias do Google Guice, Spring, e melhorias em conceitos do próprio Seam.
JSR-299: ContextandDependencyInjection for Java EE O que esperar do Seam3? O Seam3 vai continuar com a filosofia de prover uma stack completa para desenvolvimento usando as tecnologias JavaEE O Seam3 vai usar uma implementação de CDI (Weld?) como core e prover um série de extensões portáveis para a CDI Integração com outros frameworks jBPM, E-mail, Segurança, Engine de Regras, PDF, etc Suportar componentes do Seam2
JSR-299: ContextandDependencyInjection for Java EE E o Weld, o que tem além da CDI Não é o foco do Weld implementar muita coisa, isso deve ficar para o Seam3 No entanto ele provê algumas extensões: Suporte ao ambiente JavaSE Integração com Wicket
JSR-299: ContextandDependencyInjection for Java EE Exemplo
JSR-299: ContextandDependencyInjection for Java EE Perguntas?
JSR-299: ContextandDependencyInjection for Java EE Referências http://jcp.org/en/jsr/summary?id=299 http://in.relation.to/ http://seamframework.org/Weld
Do Seam à CDI (JSR-299

More Related Content

Similar to Do Seam à CDI (JSR-299

Como Sobreviver Com Java2
Como Sobreviver Com Java2Como Sobreviver Com Java2
Como Sobreviver Com Java2Saulo Arruda
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineFrederico Maia Arantes
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legadoClóvis Wichoski
 
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 CXFRafael T. C. Soares (tuelho)
 
Reinventar a roda a cada novo framework js, vale a pena?
Reinventar a roda a cada novo framework js, vale a pena?Reinventar a roda a cada novo framework js, vale a pena?
Reinventar a roda a cada novo framework js, vale a pena?Fernanda Bernardo
 
Academia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeAcademia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeGlobalcode
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioPatrick Monteiro
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)Mario Sergio
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks phpIgor Moura
 
Java Micro Edition
Java Micro EditionJava Micro Edition
Java Micro Editionjgbirk
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformAndré Paulovich
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010Norton Guimarães
 

Similar to Do Seam à CDI (JSR-299 (20)

JBossInBossa2011
JBossInBossa2011JBossInBossa2011
JBossInBossa2011
 
Como Sobreviver Com Java2
Como Sobreviver Com Java2Como Sobreviver Com Java2
Como Sobreviver Com Java2
 
Maverick v1.0
Maverick v1.0Maverick v1.0
Maverick v1.0
 
Workshop05
Workshop05Workshop05
Workshop05
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App Engine
 
Framework web 01 - Aula UTFPR 2018
Framework web 01 - Aula UTFPR 2018Framework web 01 - Aula UTFPR 2018
Framework web 01 - Aula UTFPR 2018
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legado
 
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
 
Reinventar a roda a cada novo framework js, vale a pena?
Reinventar a roda a cada novo framework js, vale a pena?Reinventar a roda a cada novo framework js, vale a pena?
Reinventar a roda a cada novo framework js, vale a pena?
 
Academia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeAcademia do Arquiteto Globalcode
Academia do Arquiteto Globalcode
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.io
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)
 
GUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EEGUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EE
 
Java no Google App Engine - TDC2011
Java no Google App Engine - TDC2011Java no Google App Engine - TDC2011
Java no Google App Engine - TDC2011
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Slides da palestra no Flex mania 2011
Slides da palestra no Flex mania 2011Slides da palestra no Flex mania 2011
Slides da palestra no Flex mania 2011
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks php
 
Java Micro Edition
Java Micro EditionJava Micro Edition
Java Micro Edition
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud Platform
 
ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010ASP.NET e Visual Studio 2010
ASP.NET e Visual Studio 2010
 

Do Seam à CDI (JSR-299

  • 1. Do Seam à CDI (JSR-299)Gilliard Cordeiro
  • 2. Apresentação Gilliard Cordeiro http://gilliard.eti.br gscordeiro@gmail.com Analista de Sistemas pela UFMS Especialista em Eng. de Software pela UNIDERP Coordenador de Novas Tecnologias no Tribunal de Justiça de MS Instrutor em cursos de Java no SENAC Um dos coordenador do JUGMS
  • 3. JavaEE nos trilhos... JavaEE 5 e 6 voltados para a produtividade JavaEE 6 “aparando arestas” em JSF e JPA Criação de perfis que separam o JavaEE em partes menores Adição da CDI, que adiciona à stack padrão funcionalidades que usuários de Seam e Spring gostariam há um bom tempo
  • 4. Composição do perfil Web do JavaEE Servlet 3.0 JavaServerPages (JSP) 2.2 ExpressionLanguage (EL) 2.2 Standard Tag Library for JavaServer Pages (JSTL) 1.2 JavaServerFaces (JSF) 2.0 Common Annotations for Java Platform (JSR-250) 1.1 Enterprise JavaBeans (EJB) 3.1 Lite Java Transaction API (JTA) 1.1 Java Persistence API (JPA) 2.0 BeanValidation 1.0 JSR-299 1.0 JSR-330 1.0 Outros... JavaEE separado em perfis
  • 5. JSR-299: ContextandDependencyInjection for Java EE Vários nomes envolvidos na especificação
  • 6. JSR-299: ContextandDependencyInjection for Java EE Vários nomes envolvidos na especificação
  • 7. JSR-299: ContextandDependencyInjection for Java EE Características da CDI Gerencia o ciclo de vida de objetos statefull Provê um mecanismo de DI typesafe Disponibiliza mecanismo de eventos facilitando o desenvolvimento com baixo acoplamento Tem um mecanismo de interceptors e decorators Possibilita a criação de extensões portáveis para qualquer implementação de CDI
  • 8. JSR-299: ContextandDependencyInjection for Java EE Com a CDI, o que será do Seam? Apesar de compartilhar muitos conceitos, as duas coisas continuarão existindo Seam PDF jBPM Regras E-mail Outros Weld CDI
  • 9. JSR-299: ContextandDependencyInjection for Java EE Com a CDI, o que será do Seam? O Seam é um conjunto maior de funcionalidades, enquanto a CDI representa apenas o “core” A CDI não simplesmente padronizou o core do Seam; se baseou em idéias do Google Guice, Spring, e melhorias em conceitos do próprio Seam.
  • 10. JSR-299: ContextandDependencyInjection for Java EE O que esperar do Seam3? O Seam3 vai continuar com a filosofia de prover uma stack completa para desenvolvimento usando as tecnologias JavaEE O Seam3 vai usar uma implementação de CDI (Weld?) como core e prover um série de extensões portáveis para a CDI Integração com outros frameworks jBPM, E-mail, Segurança, Engine de Regras, PDF, etc Suportar componentes do Seam2
  • 11. JSR-299: ContextandDependencyInjection for Java EE E o Weld, o que tem além da CDI Não é o foco do Weld implementar muita coisa, isso deve ficar para o Seam3 No entanto ele provê algumas extensões: Suporte ao ambiente JavaSE Integração com Wicket
  • 14. JSR-299: ContextandDependencyInjection for Java EE Referências http://jcp.org/en/jsr/summary?id=299 http://in.relation.to/ http://seamframework.org/Weld