Red Hat laid out a future strategy for JBoss that is intended to provide a single platform for a variety of programming and deployment models, and announced three products for its next-generation Java application server portfolio. The three products are aimed at three different workloads: from simple web applications, to light and rich Java applications, to Java Enterprise Edition (EE) based applications
"The marketplace today has spawned a variety of alternatives [to the Java EE programming model]; the new languages and frameworks are all driven to simplify application development," said Craig Muzilla, vice president, Middleware, Red Hat Inc. "Java EE does not address this variety—it's too heavy and complex. On the other hand, many of the emerging container technologies don't have a full set of enterprise services that companies would come to expect in deploying large-scale applications."
For example, he said, organizations may start with alternative application server stacks like Tomcat of OSGi, which are lightweight and make it "easy to write simple applications and manage and deploy them quickly." However, he said, when those organizations scale up to more complex applications that need security or messaging and start to pull in those services from various sources and glue them together in an ad hoc manner, they "have to support an explosion of complexity."
JBoss Open Choice is Red Hat's vision for its next-generation Java platform. The JBoss Microcontainer, the new application platform architecture, isolates core enterprise-class platform services from the variety of containers and frameworks available, and is at the heart of Red Hat's three new tiered offerings.
According to Dr. Mark Little, CTO of JBoss, the company has "reachitected the application server around a microcontainer—it's a natural evolution of the microkernel. It supports natively JMX, OSGi, POJO; you will be able to deploy onto the new architecture as is. It will just run and the microcontainer can glue all the disparate models together seamlessly."
He continued, "Above the microcontainer is the core enterprise services, what we call the next generation of application servers. It allows us to future-proof our customers going forward. The different workloads we've seen today may not predominate in 2-5 years time, and the architecture will allow us to evolve and adapt without having to reimplement."
At the high end of the application server offerings is JBoss Enterprise Application Platform 5.0 for highly transactional applications, utilizing the Java EE programming approach. For midsize workloads, JBoss Enterprise Web Platform 5.0 is a lighter-weight version for rich Java applications that also provides enterprise features for clustering, caching and simple Web services. And targeting simple Web applications is JBoss Enterprise Web Server 1.0.
In addition, the new JBoss Web Framework Kit includes enterprise-class versions of Google Web Toolkit, RichFaces, Spring Framework and Struts. Future versions are expected to include additional rich application frameworks.
Red Hat's Muzilla said he expects most customers to gravitate toward the second tier—short of the full EE but providing a needed a number of services. Most of the services offered will be based around Java EE, Muzilla said, but management is an example of something outside the spec. "There is no JEE spec for management per se, so how you manage and deploy the configuration are services outside of the JEE spec."
Muzilla said the new architecture, which was under way before Oracle announced its intentions to acquire Sun, will provide flexibility for customers in an uncertain future. "We are confident Oracle will stay committed [to Java and Java EE], but if Java EE migrates in a different direction this will protect customers from changes that might take place. We just don't know how the industry will shake out, so it provides some sense of protection."