Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Monday, May 2, 2011
Weld past, present and future
Pete Muir, Aleš JustinJBoss by Red Hat
Monday, May 2, 2011
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
About us
•Pete Muir•Weld Founder•CDI 1.1 Spec Lead
•Aleš Justin•Weld Lead•Microcontainer co-author
Monday, May 2, 2011
What is Weld? What is CDI?How does it all fit together?
Monday, May 2, 2011
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
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
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
DemoEnough boring slides!
Monday, May 2, 2011
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
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
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
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
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
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
Java EE 7
Monday, May 2, 2011
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
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
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
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
CDI 1.1
•Community sponsored issues•TCK built using Arquillian
Monday, May 2, 2011
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