GlassFish Commercial Edition is Dead
Oracle has recently announced a Java EE and GlassFish Server Roadmap update. On June 12, 2013, Java EE 7 was released, along with GlassFish Server Open Source Edition 4. This week, Oracle has stated that there will be no commercially supported versions of GlassFish 4. Whilst TmaxSoft's JEUS 8 application server has achieved Java EE 7 compatibility, it isn't scheduled for release until next year, meaning that GlassFish 4, the Java EE 7 reference implementation, is the only Java EE 7 certified application server currently available.
Oracle has stated that the primary role of GlassFish Server Open Source Edition has been, and continues to be, driving adoption of the latest release of the Java Platform, Enterprise Edition. Here are the updates to the GlassFish roadmap.
- GlassFish Server Open Source Edition 4.1 is scheduled for 2014, as already announced in JavaOne 2013.
- The GlassFish trunk will transition to GlassFish Server Open Source Edition 5. This will become the Java EE 8 reference implementation, following the steps of previous releases.
- Oracle will no longer release GlassFish with commercial support. There will be no Commercial Edition of GlassFish 4.
Existing customers with GlassFish Server 2 or 3 support will continue, following Oracle's Lifetime Support Policy. Support for new customers of GlassFish Server 2 or 3 is still available, although it's a hard sell as there will be no support for the current and future versions. GlassFish will continue to be bundled with the Java EE SDK, with more focus on developers and community-driven requirements. Oracle also stated that they continue to encourage community contributions, bug reports, and participation on the GlassFish forum.
GlassFish 4 users who want access to commercial support will have to look for support outside of Oracle. When Oracle dropped support for Java 6, Red Hat took over OpenJDK 6 and effectively extended support for Java 6 users. This makes Red Hat a possible candidate to take over GlassFish support. Another option for GlassFish users is to move to a commercially supported Java EE application server. There are a lot of Java EE servers to choose from, and the list of Java EE Certified application server can be found in the Java EE Compatibility page. Please take note of the Java EE version and profile that your application requires. For those who wish to stay open-source with commercial support, WildFly/JBoss EAP easily comes to mind. These two have the same codebase, but are different builds. Oracle recommends moving to WebLogic, their commercially supported application server. Pricing details can be found in the Oracle Technology Global Price List.
Oracle recommends existing commercial GlassFish Server customers begin planning to move to WebLogic Server. Here are the reasons listed.
- Applications developed to Java EE standards can be deployed to both GlassFish Server and Oracle WebLogic Server.
- GlassFish Server and Oracle WebLogic Server have implementation-specific deployment descriptor interoperability.
- GlassFish Server 3.x and Oracle WebLogic Server share quite a bit of code, so there are quite a bit of configuration and (extended) feature similarities. Shared code includes JPA, JAX-RS, WebSockets, CDI, Bean Validation, JSF, JAX-WS, JAXB, and WS-AT.
- Both Oracle GlassFish Server 3.x and Oracle WebLogic Server 12c support Oracle Access Manager, Oracle Coherence, Oracle Directory Server, Oracle Virtual Directory, Oracle Database, Oracle Enterprise Manager and are entitled to support for the underlying Oracle JDK.
Note that moving from GlassFish to WebLogic is migrating from one application server to another. This needs more planning and effort, compared to moving to GlassFish with commercial support, or switching from WildFly to JBoss EAP. Oracle has stated that organizations can continue to develop on GlassFish and leverage that development by deploying on WebLogic. Note that this can also be done between other Java EE compliant application servers. Organizations can also work directly with the free WebLogic Server for development purposes.
For further reading, software architect Markus Eisele has written the blog post titled R.I.P. GlassFish - Thanks for all the fish, which provides an insightful commentary on the removal of GlassFish support. Bruno Borges, Product Manager at Oracle, has also posted an article titled 6 Facts About GlassFish Announcement, to clarify possible misconceptions about the announcement.
However you spin it..
Without a revenue stream for Glassfish its going to see less investment from Oracle. I doubt the open-source community as a whole will step up sufficiently to paper over the cracks.
Given how slowly other application servers (including WebLogic) adopt the newer standards this in turn hampers adoption, and makes Java EE look more and more like vapourware (no production support for EE 7 after 6 months, sheesh). All in all this is very disappointing indeed.
Maybe, maybe not...
It's obvious GlassFish and WebLogic are two different runtimes. As a matter of perspective though, Java EE is far better at portability than J2EE ever had been and WebLogic does naturally share the most amount of code with GlassFish as compared to any other commercial offering at the moment.
As alluded to, I think a positive outcome from everyone's perspective would be greater community participation on GlassFish (and perhaps even third party commercial support). To that end, one interesting idea to consider is AdoptGlassFish (similar to the AdoptOpenJDK initiative we have).
A promising upstart to the Java EE ecosystem that deserves mention in this context is Apache TomEE supported by Tomitribe.
Reza Rahman | Java EE, GlassFish, WebLogic Evangelist
All views voiced are my own, not necessarily Oracle's.