JAX Magazine: The free PDF magazine powered by JAXenter!
CDI was a community-driven technology from the very beginning. The Java Expert Group for CDI was open from the very start and continues to do so. It is one of the prototypes for JSR.next and formed a great community because of this openness. And this community gives back 100 times the effort you put into it. On top of that, it’s really fun to work with this technology. CDI is not some freaky artificial phantasm that has no common ground with any real business. Nor is it a long-time-grown monster that has tons of historical burden to carry with it. If you look at a project using CDI, you get the feeling that it’s really done right. Most of the things you do with CDI “just works” (tm). CDI felt cool at the first touch – but unlike other hyped technologies it still feels cool now, after a few years! What’s more, CDI has already proved itself in big projects. One of my CDI-based projects went live in August 2010, and it serves more than 40,000 concurrent users, easily getting five million page hits per day. And I do know of big banks and insurance companies who handle even more throughput with CDI-based projects! In this JavaTechJournal, we will cover CDI full circle. In our introductory article, we lay out the basics of the dependency injection core itself: its historical background, basic mechanisms, and key features. A second article provides the fundamentals of CDI Extension programming, demonstrating how the CDI extension mechanism can be used to implement additional functionality in a portable, vendor-independent way. Another article explains the CDI Ecosystem, showing how the popular projects Seam3 and MyFaces CODI became Apache DeltaSpike. Last but not least, we shed a light on testing CDI applications with the JBoss Arquillian framework.