Do Seam à CDI (JSR-299)Gilliard Cordeiro
ApresentaçãoGilliard Cordeiro http://gilliard.eti.brgscordeiro@gmail.comAnalista de Sistemas pela UFMSEspecialista em Eng. de Software pela UNIDERPCoordenador de Novas Tecnologias no Tribunal de Justiça de MSInstrutor em cursos de Java no SENACUm dos coordenador do JUGMS
JavaEE nos trilhos...JavaEE 5 e 6 voltados para a produtividadeJavaEE 6 “aparando arestas” em JSF e JPACriação de perfis que separam o JavaEE em partes menoresAdiçã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 JavaEEServlet 3.0JavaServerPages (JSP) 2.2ExpressionLanguage (EL) 2.2Standard Tag Library for JavaServer Pages (JSTL) 1.2JavaServerFaces (JSF) 2.0Common Annotations for Java Platform (JSR-250) 1.1Enterprise JavaBeans (EJB) 3.1 LiteJava Transaction API (JTA) 1.1Java Persistence API (JPA) 2.0BeanValidation 1.0JSR-299 1.0JSR-330 1.0Outros...JavaEE separado em perfis
JSR-299: ContextandDependencyInjection for Java EEVários nomes envolvidos na especificação
JSR-299: ContextandDependencyInjection for Java EEVários nomes envolvidos na especificação
JSR-299: ContextandDependencyInjection for Java EECaracterísticas da CDIGerencia o ciclo de vida de objetos statefullProvê um mecanismo de DI typesafeDisponibiliza mecanismo de eventos facilitando o desenvolvimento com baixo acoplamentoTem um mecanismo de interceptors e decoratorsPossibilita a criação de extensões portáveis para qualquer implementação de CDI
JSR-299: ContextandDependencyInjection for Java EECom a CDI, o que será do Seam?Apesar de compartilhar muitos conceitos, as duas coisas continuarão existindoSeamPDFjBPMRegrasE-mailOutrosWeldCDI
JSR-299: ContextandDependencyInjection for Java EECom 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 EEO que esperar do Seam3?O Seam3 vai continuar com a filosofia de prover uma stack completa para desenvolvimento usando as tecnologias JavaEEO Seam3 vai usar uma implementação de CDI (Weld?) como core e prover um série de extensões portáveis para a CDIIntegração com outros frameworksjBPM, E-mail, Segurança, Engine de Regras, PDF, etcSuportar componentes do Seam2
JSR-299: ContextandDependencyInjection for Java EEE o Weld, o que tem além da CDINão é o foco do Weld implementar muita coisa, isso deve ficar para o Seam3No entanto ele provê algumas extensões:Suporte ao ambiente JavaSEIntegração com Wicket
JSR-299: ContextandDependencyInjection for Java EEExemplo
JSR-299: ContextandDependencyInjection for Java EEPerguntas?
JSR-299: ContextandDependencyInjection for Java EEReferênciashttp://jcp.org/en/jsr/summary?id=299http://in.relation.to/http://seamframework.org/Weld
Do Seam à CDI (JSR-299)

Do Seam à CDI (JSR-299)

  • 1.
    Do Seam àCDI (JSR-299)Gilliard Cordeiro
  • 2.
    ApresentaçãoGilliard Cordeiro http://gilliard.eti.brgscordeiro@gmail.comAnalistade Sistemas pela UFMSEspecialista em Eng. de Software pela UNIDERPCoordenador de Novas Tecnologias no Tribunal de Justiça de MSInstrutor em cursos de Java no SENACUm dos coordenador do JUGMS
  • 3.
    JavaEE nos trilhos...JavaEE5 e 6 voltados para a produtividadeJavaEE 6 “aparando arestas” em JSF e JPACriação de perfis que separam o JavaEE em partes menoresAdiçã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 perfilWeb do JavaEEServlet 3.0JavaServerPages (JSP) 2.2ExpressionLanguage (EL) 2.2Standard Tag Library for JavaServer Pages (JSTL) 1.2JavaServerFaces (JSF) 2.0Common Annotations for Java Platform (JSR-250) 1.1Enterprise JavaBeans (EJB) 3.1 LiteJava Transaction API (JTA) 1.1Java Persistence API (JPA) 2.0BeanValidation 1.0JSR-299 1.0JSR-330 1.0Outros...JavaEE separado em perfis
  • 5.
    JSR-299: ContextandDependencyInjection forJava EEVários nomes envolvidos na especificação
  • 6.
    JSR-299: ContextandDependencyInjection forJava EEVários nomes envolvidos na especificação
  • 7.
    JSR-299: ContextandDependencyInjection forJava EECaracterísticas da CDIGerencia o ciclo de vida de objetos statefullProvê um mecanismo de DI typesafeDisponibiliza mecanismo de eventos facilitando o desenvolvimento com baixo acoplamentoTem um mecanismo de interceptors e decoratorsPossibilita a criação de extensões portáveis para qualquer implementação de CDI
  • 8.
    JSR-299: ContextandDependencyInjection forJava EECom a CDI, o que será do Seam?Apesar de compartilhar muitos conceitos, as duas coisas continuarão existindoSeamPDFjBPMRegrasE-mailOutrosWeldCDI
  • 9.
    JSR-299: ContextandDependencyInjection forJava EECom 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 forJava EEO que esperar do Seam3?O Seam3 vai continuar com a filosofia de prover uma stack completa para desenvolvimento usando as tecnologias JavaEEO Seam3 vai usar uma implementação de CDI (Weld?) como core e prover um série de extensões portáveis para a CDIIntegração com outros frameworksjBPM, E-mail, Segurança, Engine de Regras, PDF, etcSuportar componentes do Seam2
  • 11.
    JSR-299: ContextandDependencyInjection forJava EEE o Weld, o que tem além da CDINão é o foco do Weld implementar muita coisa, isso deve ficar para o Seam3No entanto ele provê algumas extensões:Suporte ao ambiente JavaSEIntegração com Wicket
  • 12.
  • 13.
  • 14.
    JSR-299: ContextandDependencyInjection forJava EEReferênciashttp://jcp.org/en/jsr/summary?id=299http://in.relation.to/http://seamframework.org/Weld