Sun Microsystems previews the next version of its lightweight OSGi-based GlassFish Enterprise Server Version 3 with today's release of a "Prelude" edition.
The current GlassFish V2 open source version of Java Platform Enterprise Edition (Java EE) 5 application server is popular with developers working on Web services, service-oriented architecture, and rich Internet applications (RIA). GlassFish V3 is based on the upcoming release of Platform Enterprise Edition 6 (Java EE).
Both GlassFish V3 and Java EE6 are scheduled to be released in Spring 2009 around the time of the next Sun-sponsored JavaOne conference in San Francisco, said Paul Hinz, director of Java Enterprise System at Sun. The preview of GlassFish helps developers work with new features supporting RIA development as well as more traditional serverside development, he said.
"When GlassFish V3 comes out next spring it will offer full app server support for Java EE 6 in both the Web tier and the app tier," he said. "GlassFish V3 Prelude allows you to have one development in your Web tier and the same development in your app tier. So you can use the same deployment methodology, management and tests."
Jonathan Eunice, principal IT Advisor at Illuminata, Inc., cautions that for all the new features to support Web applications, this is a preview release without full Java EE6 support.
Prelude to a GlassFish
"The biggest downside I see to the V3 Prelude is that, in obeying the rules of the open road to release early and get users' hands on it, it doesn't have the [full functionality], and it has a shorter than usual support lifetime," Eunice said.
Both the Sun executive and the analyst pointed to V3 support for dynamic languages, especially Ruby via JRuby, as a plus for developers working on Web and RIA applications.
Specific to Ajax development, John Clingan, GlassFish project manager, notes that the new GlassFish offers full Comet support.
"Comet enables applications that are push enabled," Clingan explained. "Typically a user has to push refresh to get new data. But with Ajax the server can push data rapidly down to the client. GlassFish V3 Prelude supports Comet right out of the box."
GlassFish supports OSGi, which is also supported by Sun's rival in Java, the IBM/Oracle-backed Eclipse Foundation, which offers Swordfish as its OSGi implementation.
"OSGi is a dynamic module system for Java, something which brings added versatility to any initiative pegged to the Java platform," explained SearchSOA columnist Daniel Rubio, earlier this year in What OSGi means to SOA. "This versatility comes in a way that was missing in many of the core parts related to Java, whether it be in Java application servers, the latest Java Business Integration (JBI) service bus model, or, inclusively, the Java Virtual Machine itself."
In Clingan's view, OSGi provides a way to extend the functionality of the core application tier through OSGi bundles.
"If you've written a set of functionality and bundled it up as OSGi with the intent of pushing it to multiple application servers that support OSGi, you can now do that with GlassFish V3 Prelude," Clingan said.
However, Eunice is a little skeptical of the current enthusiasm for OSGi. The basic strategy of the OSGi modular app server is "don't load what you don't need, improving startup times and ability to customize what functions are provided."
But the analyst said that in his opinion "there's a little 'fetishization' of OSGi in the industry right now, when it's really the performance or other delivered attributes that are truly important, not OSGi per se. But OSGi does help get to that better performance/modularity, so it's good - just not particularly worthy of the idol worship it sometimes receives."
Of practical importance to developers in V3 Prelude, Eunice said are "easier to configure, easier to deploy, easier to connect to development tools," notably NetBeans or Eclipse.
He also said the latest version of GlassFish is well positioned as an alternative to Tomcat.
Eunice said: "I think there's now a good argument: if you're using Tomcat for Java Web apps, uh, why are you doing that? V3 Prelude doesn't implement the full Java EE model, but for the lighter weight Web apps that don't need or use EE, it's a very nice option." He notes that Java EE5 is in GlassFish V2, and Java EE6 will be in the full GlassFish V3 next year.
For SOA, Clingan notes that in V3 "we're offering an upgrade version of our Web services stack, called Project Metro. It offers Microsoft .NET 3.5 Web services interoperability.