Eclipse has achieved another GlassFish milestone with the anticipated GA release of version 5.1. A year in the making, this milestone included previous GlassFish milestones such as the full migration of source code and open-sourcing the Java EE TCK (September 2018), the RC1 release of GlassFish 5.1 (October 2018), and the integration of EclipseLink and Eclipse Jersey in GlassFish (December 2018). More details may be found in the GlassFish release plan dating back to September 2018. While there are no new features with GlassFish 5.1, notable changes in this GA release include: GlassFish released under the EPL 2.0 and GPL 2.0 licenses and Maven coordinates changed from javax.* to jakarta.* .

Mike Milinkovich, executive director at Eclipse, speaking on the significance of this release, stated:

We're excited to announce the full migration of GlassFish to Eclipse Foundation. We were able to onboard all of GlassFish, which has a huge, very mature code base. And we open-sourced the Java EE TCKs, which was an enormous change for the Java EE ecosystem. Shipping Eclipse GlassFish is a major milestone in fully establishing the Jakarta EE specification process, a major advance for the future of enterprise Java.

Dmitry Kornilov, senior software development manager at Oracle, expressed his thoughts on this milestone release in a recent blog post:

Eclipse GlassFish 5.1 is a pure Eclipse release. All components formerly supplied by Oracle have been transferred to the Eclipse Foundation from Oracle Java EE repositories, have passed the Eclipse release review, and have been released to Maven Central with new licensing terms. Eclipse GlassFish 5.1 has passed all CTS/TCK tests (run on Oracle infrastructure) and has been certified as Java EE 8 compatible.

GlassFish was released through the new Jakarta EE specification process, the original draft of which was released for public review in October 2018.

Scott Stark, VP of architecture at Red Hat, while describing the GlassFish RC1 release in October 2018, reaffirmed Red Hat's commitment on the new Jakarta EE specification process:

Red Hat is committed to supporting the evolution of enterprise Java at Eclipse and has been focusing on development of the Eclipse Jakarta EE specification process as well as helping with getting the migrated projects and TCK projects running under the eclipse CI infrastructure. The new specification process is a replacement for the Java Community Process (JCP) used to develop the Java EE specification through Java EE 8. It provides a fully open-source based process that includes specifications, APIs and TCKs. The Eclipse Jakarta EE specification process will be used to develop the next generation of the EE4J specifications.

Eclipse GlassFish, currently based on the Java EE 8 specification, will ultimately be compliant with Jakarta EE. When Eclipse introduced Jakarta EE in April 2018 as the new home of cloud native Java, InfoQ asked Milinkovich about two committed GlassFish releases:

We're committing to two releases of the technology projects that are moving into Eclipse this year. So they're going to be dubbed Eclipse GlassFish 5.1 and 5.2. Eclipse GlassFish 5.1, which is going to be the first time we actually ship all these projects from the Eclipse Foundation, and is going to be a major milestone in terms of on-boarding all of these projects. This is going to be certified as Java EE 8 compatible using the original Java EE TCKs. Then as soon as we can after that, we're going to spin a 5.2 release which will be Jakarta EE 8 compatible.

Originally known in 1996 as the industry's first application server, Kiva Enterprise Server, GlassFish has a remarkable 23-year history having survived numerous acquisitions, alliances and name changes. An open-source version of GlassFish was made available in 2005 which ultimately became the basis for Payara Server. Discussing the history of GlassFish and how its future will pave the way for Jakarata EE 9, Arjan Tijms, technical lead at Payara, stated:

But it's not only about GlassFish itself. With this transfer completed, and both GlassFish and its components available via the jakarta.* Maven coordinates, we are one major step closer to starting the work for Jakarta EE 9.

All the components of GlassFish consist of 13 million lines of code and 95,000 files.

Resources