![Page 1: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/1.jpg)
Monday, May 2, 2011
![Page 2: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/2.jpg)
Weld past, present and future
Pete Muir, Aleš JustinJBoss by Red Hat
Monday, May 2, 2011
![Page 3: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/3.jpg)
Agenda
•Past•What is Weld? How does it Fit In?•From TCK to cool Arquillian
•Present•State of the union•Integration(s)
•Future•Todo(s)•CDI 1.1
Monday, May 2, 2011
![Page 4: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/4.jpg)
About us
•Pete Muir•Weld Founder•CDI 1.1 Spec Lead
•Aleš Justin•Weld Lead•Microcontainer co-author
Monday, May 2, 2011
![Page 5: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/5.jpg)
What is Weld? What is CDI?How does it all fit together?
Monday, May 2, 2011
![Page 6: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/6.jpg)
Weld•JBoss Community Project, licensed under ASL 2.0•CDI (Java Standard) Reference Implementation•Used in JBoss AS and GlassFish•Also available for
•Jetty•Tomcat•GAE•Java SE
Monday, May 2, 2011
![Page 7: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/7.jpg)
Java EE
CD
I
EJB 3
Servlets
JAX-RS
JMS
JSF
JBoss AS 7
Weld
JBoss EJB3
JBoss Web
RESTEasy
HornetQ
Mojarra
Monday, May 2, 2011
![Page 8: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/8.jpg)
CDI TCK•JBoss Community Project, licensed under ASL 2.0•You can get involved
•If you find a bug in behavior of an implementation, create a test
•Origin of Arquillian
Monday, May 2, 2011
![Page 9: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/9.jpg)
DemoEnough boring slides!
Monday, May 2, 2011
![Page 10: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/10.jpg)
State of the union
•Released 1.1.1.Final•1.1.1.SP1 release soon•Working closely with GlassFish on updates
•More changes in 1.2.x•Javassist → ClassFileWriter•Container reflection•Light WeldClass info
•Harness → Arquillian•https://github.com/alesj/harness2arquillian
Monday, May 2, 2011
![Page 11: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/11.jpg)
JBossAS6•v6.0.0.Final → v6.1.0.Final
•Moved to JBAS project•Full integration
•100% TCK pass•Default -Pincontainer env
•External library as bean archive•Flat BeanManager ≠ JBossAS7 and GlassFish
•More natural?•Less fine-grained•Still follows BDA → CL hierarchy / visibility
Monday, May 2, 2011
![Page 12: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/12.jpg)
JBossAS7
•v7.0.0.Beta3•Work done by Stuart Douglas (JBoss EAP)
•Good progress•~ 20 / 800 TCK failing → all identified•Existing testing profiles (& ARQ containers)
•Fine-grained BeanManager control•Testing ground for Weld v1.2.x
Monday, May 2, 2011
![Page 13: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/13.jpg)
Web Containers
•Cleaned up Listener•Container interface → ServiceLoader lookup
•Tomcat 6 & 7•Jetty 6 & 7 & 8
•Shared mode •https://github.com/alesj/weld-shared
•Google AppEngine (~ Jetty6)•It runs, but no integration
Monday, May 2, 2011
![Page 14: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/14.jpg)
Miscellaneous•Seam Conversation
•Abstracting CDI usage - Weld, OWB, CanDI•https://github.com/alesj/conversation
•Lhotse•Abstracting GAE vs. JEE API•https://github.com/alesj/lhotse
•OSGi•SERLI team•https://github.com/mathieuancelin/weld-osgi
•Guice → CDI•https://github.com/avrecko/weld-guiceconfig
Monday, May 2, 2011
![Page 15: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/15.jpg)
TODOs
•WELD JIRA issues•Clean up for 1.2.x
•@Cached or @Clustered•Infinispan based → Pete?
•@HAScoped•+ Some Other Cool stuff ;-)
Monday, May 2, 2011
![Page 16: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/16.jpg)
Java EE 7
Monday, May 2, 2011
![Page 17: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/17.jpg)
Java EE 7
•Improve support for SaaS and PaaS•Improvements to contributing specs•Improvements to platform security•Descriptor controls for PaaS/SaaS
•HTML5/WebSockets support•Build on Java 7 SE•Modularity
Monday, May 2, 2011
![Page 18: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/18.jpg)
Java EE 7
•JMS 2.0•Focus on ease of use
•CDI 1.1•EJB 3.2
•Expand EJB services to all managed beans•JAX-RS 2.0•JSF 2.?
Monday, May 2, 2011
![Page 19: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/19.jpg)
CDI 1.1
•Enhance existing spec•No large issues found in real life usage
•Ordering and enablement of beans, interceptors and decorators
•Context lifecycle management•Embedded mode
Monday, May 2, 2011
![Page 20: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/20.jpg)
CDI 1.1
•Inclusion of @Unwraps from Seam Solder•More events
•Servlet•Application lifecycle
•Multi-tennant support in contexts•Scanning control
Monday, May 2, 2011
![Page 21: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/21.jpg)
CDI 1.1
•Community sponsored issues•TCK built using Arquillian
Monday, May 2, 2011
![Page 22: Monday, May 2, 2011 - JBoss€¦ · •Used in JBoss AS and GlassFish •Also available for •Jetty •Tomcat •GAE •Java SE Monday, May 2, 2011. Java EE CDI EJB 3 Servlets JAX-RS](https://reader033.vdocument.in/reader033/viewer/2022050411/5f87fd467ca15c082f52285c/html5/thumbnails/22.jpg)
CDI 1.1
Join in!
•Open development - clone http://github.com/pmuir/cdi
•Open discussion - join [email protected]•Open roadmap - look at https://issues.jboss.org/browse/CDI
Monday, May 2, 2011