2 replies on 1 page. Most recent reply: Apr 16, 2008 2:51 PM by Vijay Kandy
As the apparent competition between SpringSource, on the one hand, and JBoss, on the other, heats up, the debate often turns to the question of where enterprise Java is heading. Rod Johnson, founder of the Spring project, shares his predictions on the issue in a recent blog post, The Biggest Loser's Next Contestant: Java Bloatware.
For an alternate view on the subject, Bertrand Emmanuel's SpringSource's strategy is instructive. Emmanuel is a core Hibernate contributor.
Johnson observes that many enterprise Java applications use but a subset of the Java EE specifications. As a result, such projects are often deployed in a simple servlet container, such as Tomcat or Jetty, not in a full-blown Java EE server. While such projects do not require the entire Java EE stack, they, too, would benefit from the management and monitoring capabilities present in full-scale app servers. Thus, writes Johnson, there is a hitherto under-served market for some platform that occupies a place somewhere between Tomcat and, in Johnson's example, WebSphere.
Johnson admits in the blog post that the upcoming Java EE 6 standard's profiles feature addresses that very need: For example, the Java EE Web profile will have just the APIs needed to run a typical Web application, without enterprise integration or Web services components.
Johnson believes that Java EE 6's profiles will result in renewed competition between app server vendors, for the presumed benefit of developers:
We will once more see real competition in the application server space, rather than a continued monopoly of a decreasing number of large vendors. Through version 5, Java EE did not serve the needs of the developers and their organizations so much as the needs of vendors who were protected from competition by the many cumbersome and irrelevant legacy APIs that needed to be implemented by any new entrant...
Tomorrow's application server will have a dramatically smaller footprint than the Jabba the Hut of today.
While Java EE 6 profiles can go a long way in reducing the size of the typical app server, Johnson goes further and suggests that de facto standards are often more useful in real-world applications than the de jure standards expatiated by the JCP:
With the rise of OSGi on the server side and the emergence of SCA, the JCP is no longer the sole source of specifications relevant to enterprise Java. The ubiquity of open source and the emergence of open source de facto standards introduces another element in the mix...
A small number of open source projects are now more relevant to the majority of enterprise Java applications than the majority of the specifications that make up Java EE.
Johnson also predicts that Web applications built on popular open-source frameworks would be best served with a more powerful version of Tomcat:
The majority of Java web applications are most at home on Tomcat. A minority actually want some of the more esoteric functionality of a full-blown application server, such as JCA, or specialized capabilities such as distributed transaction management. But a larger minority need[s] some of the operational and management features of those products, but are not interested in the esoteric APIs and the bloat they bring along with them...
The same underlying platform should be able to address web and SOA requirements.
Do you agree with Johnson's suggestion that de jure standards are more important in many application areas than official JCP standards for Java EE?
You are viewing a mobilized version of this site...
View original page here