I too have been noticing this change and my internal voice kept saying why would anyone develop to J2EE when Spring provides such a compelling alternative. It is very exciting to see the new additions to Spring and it sounds like now is the time to take a serious look at Spring Security (aka Acegi).
For me this conference finally drive home that Spring is truly taking over. What’s funny to me is that Spring is finally solving the problems that J2EE and application server products identified, and tried to solve, but couldn’t.
The Spring phenomenon though, is too big to not end the article dwelling on it again. Spring will be integrated with OSGi during the remainder of 2007, Rod Johnson said in his talk on Spring 2.0. OSGi is a dynamic module system for Java, something that should have been part of Java from the beginning. Strangely, it is currently pervasive on the client side due to Eclipse (plugins), but not well known on the server side. The Spring-OSGi integration is likely to make it into OSGi standards. And as a testament to Spring’s decoupled pieces-parts architecture, Spring itself is available as OSGi bundles.
Longer term, the Spring Framework is turning into the Spring Portfolio. There are integrations with JCA, CICS, and IMS. There’s Spring Web Services, and Spring LDAP. Message-driven POJOs will become possible with Spring. Acegi, the leading enterprise-grade Java security framework, is becoming Spring Security. There’s Spring Web Flow, which is just what it sounds like, again with POJOs. The role of Spring in SOA is being standardized with efforts such as the Service Component Architecture (SCA). A Spring IDE (implemented as plugins for Eclipse) which will support Spring development, including support for AOP, and Spring Web Flow, is in the works.
Perhaps most important is the fact that Interface21 plans to bundle this large collection of little parts that make up the Spring platform or portfolio, and make them available as a single download …or distro. Not just parts all slapped together, but tested and integrated, with the right versions, known to work with each other. I believe this will clinch it. Enterprise Java will mean Spring.
Last but not least, next generation application servers from BEA, and maybe IBM, will be built on top of Spring. Am I the only one that finds this mind-blowing?