Home United States USA — software GlassFish 6.1 Should Not Be Used In Production: Here’s Why

GlassFish 6.1 Should Not Be Used In Production: Here’s Why

195
0
SHARE

We explain why GlassFish 6.1 isn’t a good choice for use in production even though it has been released as a Compatible Implementation of Jakarta EE 9.1.
Join the DZone community and get the full member experience. Earlier this week, Jakarta EE 9.1 was released. This is an update to Jakarta EE 9, adding support for JDK 11. Alongside the Jakarta EE 9.1 release, GlassFish 6.1 has been released as a Compatible Implementation. However, although GlassFish is still used by many — a legacy of the time it was supported by Oracle — we would argue it is NOT a good choice for running your enterprise applications in production. If you are considering updating to more recent GlassFish versions, it might be better to consider more reliable, supported, and up-to-date alternatives. In this blog, I explain why GlassFish 6.x is not the best choice for your mission-critical deployments. Firstly, GlassFish 6.x uses the Jakarta namespace which means you have to adapt your application to this namespace before you can run it on JDK 11. But there are many more reasons to consider other options… GlassFish users: You might think you need to migrate your Java EE application to the Jakarta namespace in order to run on JDK 11. With Payara Platform, you can use all the same specifications with JDK 11, without needing to switch to the new namespace — and have been able to do so for two years! Unlike GlassFish, the Payara Platform gives you freedom over how and when you move to the new Jakarta namespace. With Payara Platform 5, we use Eclipse Transformer tools so that you can move to the Jakarta namespace incrementally… or not at all, it’s up to you. Every specification must have been tested before it is released in order to prove that it is possible to implement it. Otherwise, a specification could have some impossible requirements. The Jakarta EE specification contains several optional parts, so it must be tested on a runtime that implements all these optional elements. GlassFish is, alongside the Payara Platform, the only Jakarta EE runtime that implements all the optional specifications. Since GlassFish is also a truly vendor-neutral product, it is at this current time used as the testing implementation of the Jakarta EE specification, and therefore it’s used to verify the usability of each new release. This is why GlassFish continues to be updated despite not being tied to a specific vendor or project team. However, although the GlassFish server is being updated, it is not maintained like other runtimes or given the necessary continuing attention between Jakarta EE releases. There is always only one release with each new Jakarta EE iteration, just to pass all the tests of the TCK (Technology Compatibility Kit) suite of the Jakarta EE specifications.

Continue reading...