Seam 3 e CDI: O futuro do Java EE 6 Ricardo Martinelli, Red Hat
Agenda A Especificação JSR-299 CDI e Weld Conceitos CDI e JSR-330 Seam 3 Módulos Seam
A história Em 2005, Gavin (God!) King lança o Seam 1.0 com o intuito de reduzir a complexidade de desenvolvimento de aplicações JSF/EJB Seam 2.0 é lançado em 2007 trazendo mais novidades  Initial Draft da JSR-299  (inicialmente chamado de Web beans) JSR-299 Expert Group (agora com o nome CDI) divulga o Final Release em 2009 Seam 3 Beta é lançado em 2010
JSR-299 e o Weld JSR-299 (CDI) Contexts and Dependency Injection for the Java EE Platform Weld JSR-299 Reference Implementation    Seam 3 Extensões para CDI Integrações para tecnologias que não são Java EE
Seam 2, Seam 3 e a JSR-299 (Weld)
CDI e JSR-330 JSR-330 - Dependency Injection for Java Criado por Rod Johnson e Bob Lee (VMWare) JSR-299 - Contexts  and Dependency Injection for Java Criado por Gavin King (Red Hat)
WTF!?  
JSR-299 "1.2.4. Relationship to Dependency Injection for Java The Dependency Injection for Java specification defines a set of annotations for the declaring injected fields, methods and constructors of a bean. The dependency injection service makes use of these annotations."
Módulos Seam 3 Parte da especificação CDI chamada  Portable Extensions: Fornece uma integração para uma funcionalidade específica Você pode utilizar apenas os módulos necessários para o desenvolvimento da sua aplicação Atualmente o Seam 3 possui 12 módulos na versão Final, mais 8 em desenvolvimento
Módulos Seam (até o momento) Catch  Cron  Config Drools  Errai Faces International JCR JMS Mail  Persistence Remoting Reports REST Security  Servlet Social Solder Wicket Validation
Demo  
Referências http://www.seamframework.org  http://jcp.org/en/jsr/summary?id=299 http://in.relation.to/Bloggers/Pete http://seamframework.org/Weld http://www.slideshare.net/joserodolfo_freitas http://www.github.com/rimolive   IRC: Freenode --> #weld, #weld-dev, #seam, #seam-dev
Dúvidas?  

Seam 3 e CDI: O futuro do Java EE 6

  • 1.
    Seam 3 eCDI: O futuro do Java EE 6 Ricardo Martinelli, Red Hat
  • 2.
    Agenda A EspecificaçãoJSR-299 CDI e Weld Conceitos CDI e JSR-330 Seam 3 Módulos Seam
  • 3.
    A história Em2005, Gavin (God!) King lança o Seam 1.0 com o intuito de reduzir a complexidade de desenvolvimento de aplicações JSF/EJB Seam 2.0 é lançado em 2007 trazendo mais novidades  Initial Draft da JSR-299  (inicialmente chamado de Web beans) JSR-299 Expert Group (agora com o nome CDI) divulga o Final Release em 2009 Seam 3 Beta é lançado em 2010
  • 4.
    JSR-299 e oWeld JSR-299 (CDI) Contexts and Dependency Injection for the Java EE Platform Weld JSR-299 Reference Implementation   Seam 3 Extensões para CDI Integrações para tecnologias que não são Java EE
  • 5.
    Seam 2, Seam3 e a JSR-299 (Weld)
  • 6.
    CDI e JSR-330JSR-330 - Dependency Injection for Java Criado por Rod Johnson e Bob Lee (VMWare) JSR-299 - Contexts  and Dependency Injection for Java Criado por Gavin King (Red Hat)
  • 7.
  • 8.
    JSR-299 "1.2.4. Relationshipto Dependency Injection for Java The Dependency Injection for Java specification defines a set of annotations for the declaring injected fields, methods and constructors of a bean. The dependency injection service makes use of these annotations."
  • 9.
    Módulos Seam 3Parte da especificação CDI chamada Portable Extensions: Fornece uma integração para uma funcionalidade específica Você pode utilizar apenas os módulos necessários para o desenvolvimento da sua aplicação Atualmente o Seam 3 possui 12 módulos na versão Final, mais 8 em desenvolvimento
  • 10.
    Módulos Seam (atéo momento) Catch Cron Config Drools  Errai Faces International JCR JMS Mail Persistence Remoting Reports REST Security Servlet Social Solder Wicket Validation
  • 11.
  • 12.
    Referências http://www.seamframework.org http://jcp.org/en/jsr/summary?id=299 http://in.relation.to/Bloggers/Pete http://seamframework.org/Weld http://www.slideshare.net/joserodolfo_freitas http://www.github.com/rimolive IRC: Freenode --> #weld, #weld-dev, #seam, #seam-dev
  • 13.

Notas do Editor

  • #4 CDI --> Contexts and Dependency Injection for Java EE Seam was created by a King who was tired of LazyInitializationException Loose Coupling, Strong typing
  • #5 • A well-defined lifecycle for stateful objects bound to lifecycle contexts, where the set of contexts is extensible • A sophisticated, typesafe dependency injection mechanism, including the ability to select dependencies at either devel-     opment or deployment time, without verbose configuration • Support for Java EE modularity and the Java EE component architecture—the modular structure of a Java EE applica-       tion is taken into account when resolving dependencies between Java EE components • Integration with the Unified Expression Language (EL), allowing any contextual object to be used directly within a     JSF or JSP page • The ability to decorate injected objects • The ability to associate interceptors to objects via typesafe interceptor bindings • An event notification model • A web conversation context in addition to the three standard web contexts defined by the Java Servlets specification • An SPI allowing portable extensions to integrate cleanly with the container
  • #10 Final   1. Solder   2. Catch   3. Config   4. Faces   5. International   6. Persistence    7. Remoting    8. REST   9. Security 10. Servlet 11. Validation 12. Wicket Análise 1. Cron 2. Drools 3. GWT 4. JCR 5. JMS 6. Mail 7. Reports 8. Social