GlassFish is the Eclipse implementation of Jakarta EE (formerly the reference implementation from Oracle) and as such supports Jakarta REST, Jakarta CDI, Jakarta Security, Jakarta Persistence, Jakarta Transactions, Jakarta Servlet, Jakarta Faces, Jakarta Messaging, etc. This allows developers to create enterprise applications that are portable and scalable, and that integrate with legacy technologies. Optional components can also be installed for additional services.
Built on a modular kernel powered by OSGi, GlassFish runs straight on top of the Apache Felix implementation. It also runs with Equinox OSGi or Knopflerfish OSGi runtimes. HK2 abstracts the OSGi module system to provide components, which can also be viewed as services. Such services can be discovered and injected at runtime.
GlassFish is based on source code released by Sun and Oracle Corporation's TopLink persistence system. It uses a derivative of Apache Tomcat as the servlet container for serving web content, with an added component called Grizzly which uses Java non-blocking I/O (NIO) for scalability and speed.
The commercially supported version of GlassFish was known as Oracle GlassFish Server,19 formerly Sun GlassFish Enterprise Server, and previously Sun Java System Application Server (SJSAS) has a history, along with other iPlanet software, going back to Netscape Application Server. This includes code from other companies such as Oracle Corporation for TopLink Essentials. Ericsson's SIP Servlet support is included, the opensource version of it is SailFish, developing towards JSR-289.20 In 2010, the difference between the commercial and open source edition was already quite small.21
Over the years several companies forked the GlassFish project and created their own distribution:
In response to Oracle’s announcement to end commercial support for GlassFish,404142 a fork called Payara Server was created and released in October 2014. Payara Server is open source under the same licenses as the original Oracle GlassFish (combined GPL2 + CDDL) and has optional commercial support from Payara Services Ltd., via the Payara Enterprise project.43
"Eclipse GlassFish". projects.eclipse.org. https://projects.eclipse.org/projects/ee4j.glassfish/who ↩
Beaton, Wayne (10 May 2018). "Eclipse GlassFish". projects.eclipse.org. https://projects.eclipse.org/projects/ee4j.glassfish ↩
"Sun ONE Application Server 7 Release Notes". https://docs.oracle.com/cd/E19683-01/817-2164-10/index.html ↩
"Sun ONE Application Server 7 Debuts". 28 October 2002. https://www.serverwatch.com/guides/sun-one-application-server-7-debuts/ ↩
"Java Live | July 30, 2002". developer.java.sun.com. Archived from the original on 4 February 2003. Retrieved 11 January 2022. https://web.archive.org/web/20030204045411/http://developer.java.sun.com/developer/community/chat/JavaLive/2002/jl0730.html ↩
"Sun Java System Application Server Platform Edition 8 Release Notes". https://docs.oracle.com/cd/E19518-01/817-6082/relnotes.html ↩
"Sun Java System Application Server Platform Edition 8 Update 1 Release Notes". docs.oracle.com. Retrieved 14 April 2023. https://docs.oracle.com/cd/E19518-01/817-7422/releasenotes.html ↩
Sharples, Rich (5 February 2005). "Sun Java System Application Server 8.1 2005Q1 Announced". TheServersSide.com. Archived from the original on 19 April 2021. https://web.archive.org/web/20210419173550/https://www.theserverside.com/discussions/thread/31701.html ↩
"FishEye: Browsing glassfish/". fisheye5.cenqua.com. Archived from the original on 3 February 2006. Retrieved 11 January 2022. https://web.archive.org/web/20060203221837/http://fisheye5.cenqua.com/viewrep/glassfish ↩
"Developing and Building Project GlassFish with NetBeans". netbeans.org. Archived from the original on 28 October 2005. Retrieved 11 January 2022. https://web.archive.org/web/20051028104924/https://netbeans.org/kb/41/glassfish.html ↩
"Server startup". https://download.oracle.com/javaee-archive/glassfish.java.net/dev/2005/08/0208.html ↩
Ottinger, Joseph (31 January 2006). "Sun Java System Application Server PE 8.2 has been released". TheServerSide.com. Archived from the original on 19 April 2021. https://web.archive.org/web/20210419173557/https://www.theserverside.com/discussions/thread/38769.html ↩
"What's New in the 8.2 Release (Sun Java System Application Server Platform Edition 8.2 Release Notes)". https://docs.oracle.com/cd/E19830-01/819-4707/abqac/index.html ↩
Lynch, Regina (15 May 2006). "Sun Java System Application Server PE 9.0 has been released". TheServerSide.com. Archived from the original on 19 September 2020. https://web.archive.org/web/20200919155333/https://www.theserverside.com/discussions/thread/40453.html ↩
"The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 289". jcp.org. https://jcp.org/en/jsr/detail?id=289 ↩
"O'Reilly Media - Technology and Business Training". www.oreillynet.com. Retrieved 2018-11-22. http://www.oreillynet.com/onjava/blog/2007/07/jsr_316_java_ee_6_spec_approve_1.html ↩
"GlassFish v3 adds support for Tomcat-style valves". Archived from the original on 2008-09-06. Retrieved 2008-09-07. https://web.archive.org/web/20080906023755/http://blogs.sun.com/jluehe/entry/glassfish_v3_adds_support_for ↩
Eduardo Pelegri-Llopart (5 November 2008). "Saved Session State in GlassFish v3 Prelude". https://www.slideshare.net/pelegri/saved-session-state-in-glassfish-v3-prelude-presentation ↩
"Oracle GlassFish Server: Frequently Asked Questions" (PDF). http://www.oracle.com/us/products/middleware/application-server/oracle-glassfish-server-faq-071872.pdf ↩
"Welcome - Oracle Community". community.oracle.com. https://community.oracle.com/welcome ↩
Author, Guest. "GlassFish Server 3.1.2.2 Now Available". blogs.oracle.com. {{cite web}}: |last1= has generic name (help) https://blogs.oracle.com/theaquarium/glassfish-server-3122-now-available ↩
"Java EE 7 / GlassFish 4.0 Launch Coverage". blogs.oracle.com. https://blogs.oracle.com/theaquarium/java-ee-7-glassfish-40-launch-coverage ↩
Author, Guest. "Java EE and GlassFish Server Roadmap Update". blogs.oracle.com. {{cite web}}: |last1= has generic name (help) https://blogs.oracle.com/theaquarium/java-ee-and-glassfish-server-roadmap-update ↩
McAllister, Neil (2013-11-04). "Want a support contract for GlassFish 4.0? Tough luck, says Oracle". The Register. https://www.theregister.co.uk/2013/11/05/no_commercial_support_for_glassfish_4/ ↩
Author, Guest. "GlassFish Server Open Source Edition 4.1 Released!". blogs.oracle.com. {{cite web}}: |last1= has generic name (help) https://blogs.oracle.com/theaquarium/glassfish-server-open-source-edition-41-released-v2 ↩
Delabassee, David. "GlassFish 4.1.1 is now available!". blogs.oracle.com. https://blogs.oracle.com/theaquarium/glassfish-411-is-now-available ↩
Kalyandurga, Yamini. "GlassFish 4.1.2 Released". blogs.oracle.com. https://blogs.oracle.com/theaquarium/glassfish-412-released ↩
Delabassee, David. "Java EE 8 and GlassFish 5.0 Released!". blogs.oracle.com. https://blogs.oracle.com/theaquarium/java-ee-8-is-final-and-glassfish-50-is-released ↩
Lyons, Will. "Moving Forward with Eclipse GlassFish at Jakarta EE". blogs.oracle.com. https://blogs.oracle.com/theaquarium/moving-forward-with-eclipse-glassfish-at-jakarta-ee ↩
"Oracle Donating Java EE to the Eclipse Foundation » Linux Magazine". https://www.linux-magazine.com/Online/News/Oracle-Donating-Java-EE-to-the-Eclipse-Foundation ↩
Guindon, Christopher. "Eclipse GlassFish 5.1 is Released - The Eclipse Foundation". www.eclipse.org. https://www.eclipse.org/community/eclipse_newsletter/2019/february/GlassFish_5.1.php ↩
"Jakarta EE 8 Status". 18 March 2019. https://www.agilejava.eu/2019/03/18/jakarta-ee-8-status/ ↩
"TCK Results". https://glassfish.org/certifications/jakarta-full-profile/9.0/TCK-Results ↩
"GlassFish 7.0 Delivers Support for JDK 17 and Jakarta EE 10". InfoQ. Retrieved 2023-01-10. https://www.infoq.com/news/2023/01/glassfish-delivers-support-jdk17/ ↩
"Contributors to eclipse-ee4j/glassfish". GitHub. Retrieved 14 April 2023. https://github.com/eclipse-ee4j/glassfish ↩
"OmniFish on Providing Support for Jakarta EE 10 and GlassFish 7". InfoQ. Retrieved 14 April 2023. https://www.infoq.com/news/2022/12/omnifish-jakartaee-glassfish/ ↩
"Eclipse GlassFish". 31 March 2023. Retrieved 14 April 2023 – via GitHub. https://github.com/eclipse-ee4j/glassfish ↩
"Home". Payara Services Ltd. Retrieved 2023-11-27. https://www.payara.fish/ ↩
"Java EE and GlassFish Server Roadmap Update (The Aquarium)". https://blogs.oracle.com/theaquarium/entry/java_ee_and_glassfish_server ↩
"GlassFish Became The Killer AppServer And Then Changed The Name : Adam Bien's Weblog". http://www.adam-bien.com/roller/abien/entry/glassfish_became_the_killer_appserver ↩