Skip to content

Releases: eclipse-ee4j/glassfish

7.0.14

31 Mar 11:45
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.14 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

This release features among others an important NPE fix for the SSHLauncher and is highly recommended for our users who make use of this launcher. The thread safety of transactions was improved, and the JDBC connection pool sizing logic was also improved, fixing an annoying bug. To maintain future quality of GlassFish, many fixes to the internal TCKs tests were done. As a new feature, command completion is now enabled in the OSGi interactive console.

New features

Fixes

  • Fixes #23483 Add lock, add notifyWaitingThreads call for better max pool size logic. by @escay in #24879
  • Fixes issue #24843 log a warning in the rare case the Resource handle by @escay in #24844
  • Fixes command progress status by @avpinchuk in #24850
  • SSL Configurator fix - CertificateRequest not being made in SSL mutual authentication by @lisa-lthorrold in #24847
  • Fixed NPE in SSHLauncher by @dmatej in #24858
  • Fixes issue #24849 make relevant methods synchronized in LocalTxConnectionEventListener by @escay in #24851
  • The secureResponse can return just SEND_* states (based on javadoc) by @dmatej in #24855

Component updates

Project refactoring and maintenance

  • Fixes issue #24845 - add new checkstyle rule: UnusedImports by @escay in #24846
  • Fixes issue 24868 Clean code: fix unlikely argument and remove some unused variables. by @escay in #24870
  • Integrate CDI TCK 4.0.13 by @avpinchuk in #24876
  • Integrate Jakarta Concurrency TCK 3.0.3 by @avpinchuk in #24866
  • Fixed dependencies of the REST TCK by @dmatej in #24853
  • Fixed dependencies of concurrency TCK by @dmatej in #24841
  • Fixed report.dir in the Authentication TCK execution by @dmatej in #24852
  • Fixed report directories for standalone TCKs by @dmatej in #24857
  • Updated Maven in Jenkinsfile by @dmatej in #24771
  • Fixed JmacHttpsTest - certificate authentication by @dmatej in #24877
  • Added staging repo to runtests.sh + archiving rotated server.log files on jenkins by @dmatej in #24883

New Contributors

Full Changelog: 7.0.13...7.0.14

8.0.0-M3

19 Mar 14:42
Compare
Choose a tag to compare
8.0.0-M3 Pre-release
Pre-release

Eclipse GlassFish 8 is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 11 M2 specification under development.

glassfish-8

Jakarta EE 11 M2 is the second milestone release of Jakarta EE 11. GlassFish 8 M3 incorporates a subset of this. The M2 versions of the Security APIs and Jakarta Faces have been added and implemented, while the Servlet M2 API has been added but not everything implemented yet. The REST M1 APIs have not yet been added.

New in M3 are the proposed final implementations of the Wave 1~4 specs; CDI (including Interceptors), Common Annotations and Expression Language and the addition of the Jakarta EE 11 milestone version of Jakarta Persistence and its implementation EclipseLink. Specific attention has been given to support all new features from the M2 versions of Jakarta Security/Jakarta Authorization, and Jakarta Faces.

8.0.0-M3 also incorporates all changes from the 7.0.x branch.

The following is the full list of Jakarta EE 11 proposed final and M2 APIs included:

API Implementation
jakarta.el-api.version 6.0.0 Expressly 6.0.0-M1
jakarta.annotation-api.version 3.0.0
jakarta.cdi-api.version 4.1.0 Weld 6.0.0.Beta1
jakarta.interceptor-api.version 2.2.0 Weld 6.0.0.Beta1
jakarta.servlet-api.version 6.1.0-M2 (internal in GlassFish 8.0.0-M3)
jakarta.faces-api.version 4.1.0-M2 Mojarra 4.1.0-M2
jakarta.pages-api.version 4.0.0-M2 WaSP 4.0.0-M1
jakarta.concurrent-api.version 3.1.0-M2 Concurro 3.1.0-M3
jakarta.persistence-api.version 3.2.0-M2 EclipseLink 5.0.0-B01
jakarta.security-api.version 4.0.0-M2 Soteria 4.0.0-M2
jakarta.authorization-api.version 3.0.0-M2 Exousia 3.0.0-M2
jakarta.websocket-api.version 2.2.0-M2 2.2.0-M2
jakarta.authentication-api.version 3.1.0-M1 Epicyro 3.1.0-M1
jakarta.validation-api.version 3.1.0-M1 Hibernate Validator 8.0.1.Final

JDK 21 is required as a minimum now and the final version of GlassFish 8 is targeted to certify on JDK 21 for Jakarta EE 11.

In this release GlassFish itself compiles, builds and passes the internal tests executed during a build, but a small amount of those have been disabled for now. The Security and Authorization TCK passed completely (except for the signature, which needs updating), the Faces 4.1 M2 TCK passes fully as well. The PR verification tests all pass as well.

Being an early access milestone build, this build should obviously only be used for testing. Non of the updated APIs are truly final and are subject to change. The proposed final APIs are currently in staging and are undergoing a ballot for their final release.

What's Changed

New Contributors

Full Changelog: 8.0.0-M2...8.0.0-M3

7.0.13

28 Feb 23:25
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.13 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

In the release for this month we replaced many synchronized blocks by reentrant locks (to accommodate JDK 21 virtual threads). We also looked at SSO between clusters, and fixed a long standing bug there. A long running investigation into potential resource leaks finally came to a conclusion, and resulted in many fixes throughout the code base. The admin console also saw various improvements, specifically with respect to loading.

New features

Fixes

Component updates

Project refactoring and maintenance

New Contributors

PR list: Milestone 7.0.13
Full Changelog: 7.0.12...7.0.13

8.0.0-M2

10 Feb 12:46
Compare
Choose a tag to compare
8.0.0-M2 Pre-release
Pre-release

Eclipse GlassFish 8 is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 11 M1 specification under development.

glassfish-8

Jakarta EE 11 M1 is the first milestone release of Jakarta EE 11. GlassFish 8 M2 incorporates a subset of this. The M1 versions of the Security APIs and Jakarta Faces have been added and implemented, while the Servlet M1 API has been added but not everything implemented yet. The Persistence and REST M1 APIs have not yet been added.

New in M2 is setting the JDK to 21, the addition of the M1 API of Jakarta Concurrency and an initial implementation thereof, fixing of the internal tests and fixing of the integration between Exousia (Jakarta Authorization) and GlassFish, so that setting the new Policy from a web application now actually works.

8.0.0-M2 also incorporates all changes from the 7.0.x branch.

The following is the full list of Jakarta EE 11 M1 APIs included:

API Implementation Header
jakarta.el-api.version 6.0.0-M1 Expressly 6.0.0-M1
jakarta.servlet-api.version 6.1.0-M1 (internal in GlassFish 8.0.0-M2)
jakarta.security-api.version 4.0.0-M1 Soteria 4.0.0-M1
jakarta.authorization-api.version 3.0.0-M1 Exousia 3.0.0-M1.1
jakarta.authentication-api.version 3.1.0-M1 Epicyro 3.1.0-M1
jakarta.faces-api.version 4.1.0-M1 Mojarra 4.1.0-M1
jakarta.pages-api.version 4.0.0-M1 WaSP 4.0.0-M1
jakarta.cdi-api.version 4.1.0-M1 Weld 6.0.0.Alpha1
jakarta.interceptor-api.version 2.2.0-M1 Weld 6.0.0.Alpha1
jakarta.concurrent-api.version 3.1.0-M1 Concurro 3.1.0-M1
jakarta.websocket-api.version Tyrus 2.2.0-M1 Tyrus 2.1.5
jakarta.validation-api.version 3.1.0-M1 Hibernate Validator 8.0.1.Final
jakarta.annotation-api.version 3.0.0-M1

JDK 21 is required as a minimum now and the final version of GlassFish 8 is targeted to certify on JDK 21 for Jakarta EE 11.

In this release GlassFish itself compiles, builds and passes the internal tests executed during a build, but a small amount of those have been disabled for now. The Security TCK passed completely (except for the signature, which needs updating), while the Faces TCK has about 23 failures still. The PR verification tests all pass as well.

Being an early access milestone build, this build should obviously only be used for testing. Non of the updated APIs are final and are subject to change.

What's Changed

New Contributors

Full Changelog: 8.0.0-M1...8.0.0-M2

7.0.12

29 Jan 13:12
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.12 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

This release we focused on finding and fixing the root cause of several "strange" WebSocket related bugs that we witnessed in the past. We also did a similar thing related to several issues with running apps on the default context root, especially where after authentication redirects happened to another URL. Furthermore we looked into problems with authentication and SSO in a cluster and did some initial fixes. Handling and processing of logging was looked at once again, something we have been improving a lot step by step through various iterations of releases. Finally but not least a nasty ConcurrentModificationException was fixed, and a memory leak (via HK2) was solved.

New features

Fixes

  • Fixed several possible issues with rolling log files by @dmatej in #24700
  • Fixes several issues around logging by @dmatej in #24743
  • Fixed authentication modules not getting masked request by @arjantijms in #24740
  • Fixed HA SingleSingOn by also trying the application classloader to restore the Principal for HA. by @arjantijms in #24753
  • Fixed WebSocket init bug by ordering WebSocket initializer before Faces one by @arjantijms in #24757
  • Fixed WebSocket upgrade bug by adding Guard for websocket upgrade to only happen once for a request. by @arjantijms in #24759
  • Fixes REST ASM resource generator by @avpinchuk in #24758
  • Fixed ConcurrentModificationException in context map propagator by @avpinchuk in #24745
  • Fixed cmtTimeoutInSeconds config, it can't take effect when set value 0 in admin UI. by @zistrong in #24702
  • Fixed the RecoveryManager's Resync Timeout by @hs536 in #24707
  • Fixed startserv script not reporting errors correctly by @OndroMih in #24709

Component updates

Project refactoring and maintenance

New Contributors

Full Changelog: 7.0.11...7.0.12

8.0.0-M1

24 Dec 15:21
Compare
Choose a tag to compare
8.0.0-M1 Pre-release
Pre-release

Eclipse GlassFish 8 is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 11 M1 specification under development.

Jakarta EE 11 M1 is a first milestone release of Jakarta EE 11. GlassFish 8 M1 incorporates a subset of this. The M1 versions of the Security APIs and Jakarta Faces have been added and implemented, while the Servlet M1 API has been added but not everything implemented yet. The Concurrency and REST M1 APIs have not yet been added.

The following is the full list of Jakarta EE 11 M1 APIs included:

  • jakarta.validation-api.version 3.1.0-M1
  • jakarta.annotation-api.version 3.0.0-M1
  • jakarta.el-api.version 6.0.0-M1
  • jakarta.servlet-api.version 6.1.0-M1
  • jakarta.annotation-api.version 3.0.0-M1
  • jakarta.security-api.version 4.0.0-M1
  • jakarta.authorization-api.version 3.0.0-M1
  • jakarta.authentication-api.version 3.1.0-M1
  • jakarta.faces-api.version 4.1.0-M1
  • jakarta.interceptor-api.version 2.2.0-M1
  • jakarta.pages-api.version 4.0.0-M1
  • jakarta.cdi-api.version 4.1.0-M1

JDK 17 is required as a minimum now, which may be updated to JDK 21 in the next milestone. JDK 21 is supported, and the final version of GlassFish 8 is targeted to certify on JDK 21 for Jakarta EE 11.

In this release GlassFish itself compiles, builds and passes the internal tests executed during a build, but a small amount of those have been disabled for now. The Security TCK passed completely (except for the signature, which needs updating), while the Faces TCK has about 23 failures still. The PR verification tests have several failures as well still.

Being an early access milestone build, this build should obviously only be used for testing. Non of the updated APIs are final and are subject to change.

What's Changed

Full Changelog: 7.0.11...8.0.0-M1

7.0.11

04 Dec 14:24
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.11 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

This release sees an important fix where WebSockets would not work at all for applications on the default context root (e.g. https://example.com vs https://example.com/myapp). This month we have concentrated on the AdminGUI and fixed an assortment of small but annoying defects in it. Various major components were updated, such as Jersey (Jakarta REST), Tyrus (Jakarta WebSockets) and Mojarra (Jakarta Faces). To keep the project maintainable and well tested, several tests were added and improved as well.

Fixes

  • Fixed WebSocket not working for default web module applications. by @arjantijms in #24691
  • Fixed naming context propagation in ContextSetupProviderImpl by @avpinchuk in #24638
  • Fix auto login AdminGUI by accidentally changed constant by @arjantijms in #24697
  • Fixed cleaning of unhandled messages in AdminGUI by @kaido207 in #24665
  • Fixed #24686 "Properties specific to this Class" is not displayed in Edit Realm Page in AdminGUI by @kaido207 in #24687
  • Fixed several things and provided various improvements in AdminGUI by @kaido207 in #24692
  • Fix #24693 Fail to deploy a app when the app's material files remain and if there is a lifecycle module by @kaido207 in #24694
  • Fixed an error message with unnecessary pattern string by @kaido207 in #24679
  • Fixed various aspects of logging by @dmatej in #24685

Component updates

Project refactoring and maintenance

Full Changelog: 7.0.10...7.0.11

7.0.10

28 Oct 17:03
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.10 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

In this release a 10 months long operation to get an internal dependency to the slf4j-api removed finally got to fruition. This involved the intense cooperation of multiple teams, and we're exceptionally happy to have finally been able to do this. We also did a lot of work to make our builds repeatable (big thanks to @hboutemy), and we did a ton of refactoring to the internal security packages of GlassFish, making them easier to understand and therefor easier to maintain. Any external code depending on these internal packages (such as potentially custom LoginModules/Realms) may have to update (we recommend of course not depending on internal packages and using public APIs). As every release, we integrated many component updates, and did a number of smaller fixes.

Fixes

Component updates

Project refactoring and maintenance

Full Changelog**: 7.0.9...7.0.10

7.0.9

28 Sep 11:01
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.9 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21. MicroProfile support requires JDK 17 or higher.

Release overview

In this release the modularity of GlassFish is once again increased by moving the Jakarta Authentication implementation code to a new standalone project: Epicyro (a while ago a similar thing was done with Jakarta Authorization implementation code moving to Exousia). We also enabled the GlassFish embedded tests again, which were dormant for a long time; this emphasises the commitment of the team to keep GlassFish embedded in a good shape. Among the many updated components, Exousia was updated specifically to fix a bug with deployments on virtual servers, and the ORB was updated to fix a somewhat obscure bug where a remote EJB returned a JDK defined enum type.

Fixes

  • Fixed generated EJB remote interfaces loading in Embedded GlassFish by @avpinchuk in #24566
  • Classes in ScatteredArchive are processed only once. by @OndroMih in #24570
  • Properly close deployment WebappClassLoader by @avpinchuk in #24598
  • Fixed stop-local-instance command by @avpinchuk in #24591
  • Fixed #24593 Error message is not displayed when Undeploy fails in Admin Console. by @kaido207 in #24594
  • Fixed list-virtual-servers command description in Administration Guide by @avpinchuk in #24602
  • Don't log a stacktrace if MANIFEST file not found in deployed JAR by @OndroMih in #24561

Component updates

Project refactoring and maintenance

  • Enable GF Embedded test suite - part 1 (adds missing Derby JDBC driver to GF Embedded All) by @OndroMih in #24576
  • Enable GF Embedded test suite - part 3 (GF Embedded Maven plugin) by @OndroMih in #24581
  • Enable GF Embedded test suite - part 2 (also fixes a NullPointerException in VirtualServer.java) by @OndroMih in #24577
  • More stable ProgressStatusComplexITest by @dmatej in #24567
  • Add application tests for classloading-time bytecode preprocessing by @avpinchuk in #24574
  • Add application test for deployment on multiple virtual servers by @avpinchuk in #24601
  • Replace deprecated isAccessible method in all places by @avpinchuk in #24569
  • Configure the Concurrency TCK tests to produce log files in the "target" directory by @OndroMih in #24571
  • Add a builder and runner for the full connectors TCK by @arjantijms in #24568
  • Remove all Service Engine references by @avpinchuk in #24604

Full Changelog: 7.0.8...7.0.9

7.0.8

28 Aug 15:39
Compare
Choose a tag to compare

Eclipse GlassFish is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 10 specification, which is a major new feature release. Jakarta EE 10 requires JDK 11 as a minimum, but also works on JDK 17.

GlassFish 7.0.8 is a final release, containing final Jakarta EE 10 APIs. It compiles and runs on JDK 11 to JDK 21ea35. MicroProfile support requires JDK 17 or higher.

Release overview

This release fixes multi-jar compatibility in GlassFish and does further preparations for JDK 21. It includes various component updates among which those for CDI, Faces, and JSON. Test coverage is improved by adding the TCKs for REST Client and Connectors. Finally, various CDI extensions have been optimised to reduce excessive and unnecessary calls to them.

New features

  • Optimize CDI extensions to reduce unnecessary PAT handler calls by @OndroMih in #24533

Fixes

  • Fix webapp Multi-Release JAR processing by @avpinchuk in #24530
  • Fix processing of the Multi-Release libraries in EAR application by @avpinchuk in #24554
  • Build GlassFish Embedded artifacts as Multi-Release JARs by @avpinchuk in #24549
  • Add missing JSON-P API to glassfish-embedded-*.jars by @avpinchuk in #24557
  • Fixed Java 11 compatibility issue in RWLockDataStructureTest by @avpinchuk in #24538
  • Fixed #24527 Admin Console behavior when admin user changes password to empty has changed compared to before by @kaido207 in #24528
  • Fixed unit test compatibility with JDK21 by @dmatej in #24531
  • Fixed ElementStarITest and TokenAuthenticationITest by @dmatej in #24535
  • Fixed tasks submitted to executor executed during deployment @OndroMih in #24544
  • Fixed Startserv script - support help argument, fix handling errors by @OndroMih in #24547

Component updates

Project refactoring and maintenance

Full Changelog: 7.0.7...7.0.8