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 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
- Fix for the RecoveryManager's Resync Timeout by @hs536 in #24707
- Integrate Jackson 2.16.0 by @arjantijms in #24711
- Fix: The startserv script didn't report errors correctly by @OndroMih in #24709
- Integrate Grizzly 4.0.2 by @arjantijms in #24713
- Update MP to Jakarta EE 11 M1 compatible versions. by @arjantijms in #24719
- Removed CDI tests using @ManagedBean by @arjantijms in #24720
- Update glassfish7 root folder to glassfish8 by @arjantijms in #24721
- Integrate Javassist 3.30.2 by @arjantijms in #24723
- Merge master into 8.0 by @arjantijms in #24722
- Integrate JLine 3.25.0 by @avpinchuk in #24724
- Integrate ClassMate 1.7.0 by @avpinchuk in #24727
- Integrate commons-lang3 3.14.0 by @avpinchuk in #24725
- Integrate Commons IO 2.15.1 by @avpinchuk in #24726
- Integrate Helidon MicroProfile Config 3.2.5 by @avpinchuk in #24731
- Integrate early build of Jersey 4. by @arjantijms in #24732
- Integrate JSch 0.2.16 by @avpinchuk in #24729
- Reduce usage of Java SE Security Manager by @arjantijms in #24733
- Refactor deployment-time bytecode preprocessing by @avpinchuk in #24730
- Replace JMockit mock framework with EasyMock by @avpinchuk in #24738
- Give authentication modules masked request by @arjantijms in #24740
- Update JaCoCo to 0.8.11 in nucleus parent POM by @avpinchuk in #24742
- Fixes around logging by @dmatej in #24743
- Integrate EasyMock 5.2.0 by @avpinchuk in #24741
- Add debug option to start-cluster, to start all instances in debug mode by @arjantijms in #24744
- Fixes
ConcurrentModificationExceptionin context map propagator by @avpinchuk in #24745 - Integrate GlassFish Shoal 3.1.0 by @arjantijms in #24747
- Optimize servlet caching filter by @avpinchuk in #24748
- Merge remote-tracking branch 'origin/master' into 8.0 by @arjantijms in #24751
- Raise bytecode level by @avpinchuk in #24750
- Try the application classloader to restore the Principal for HA. by @arjantijms in #24753
- Integrate Tyrus 2.1.5 by @arjantijms in #24755
- Use standard proxy default method invocation handler by @avpinchuk in #24754
- Order WebSocket initializer before Faces one by @arjantijms in #24757
- Fixes REST ASM resource generator by @avpinchuk in #24758
- Guard the websocket upgrade to only happen once for a request. by @arjantijms in #24759
- Integrate Apache Santuario/XMLSec 4.0.1 by @arjantijms in #24760
- Integrate Woodstox 6.6.0 by @arjantijms in #24761
- More stable GlassFishLogHandlerTest by @dmatej in #24763
- Add Websocket TCK runner by @arjantijms in #24764
- Integrate HK2 3.0.6 by @arjantijms in #24766
- Patch Tyrus manifest to export org.glassfish.tyrus.client.exception by @arjantijms in #24765
- Print processes before the build by @dmatej in #24770
- Integrate JNA 5.14 by @arjantijms in #24778
- RecoveryManager thread safety by @dmatej in #24773
- Fixes
schedule-expEJB timer test by @avpinchuk in #24781 - Fixes issue #24782, cannot run eclipse:eclipse on module nucleus-dtds on Windows by @escay in #24783
- Fixes issue #24784, cannot build doc modules on Windows by @escay in #24785
- Updated artifactId of gf docs in the website publisher by @dmatej in #24786
- Fixes #24788 No stacktrace is printed in server log when exception occurs in class specified by Lifecycle Module by @kaido207 in #24789
- I forgot to change also groupId by @dmatej in #24791
- Add code conventions (taken from the EE4J ones that got lost) by @arjantijms in #24787
- Fixes data race during Admin Console initialization by @avpinchuk in #24793
- Update runner pom for Concurrency TCK for new 3.1.0 version by @arjantijms in #24797
- Fixes GlassFish event filtering by @avpinchuk in #24796
New Contributors
Full Changelog: 8.0.0-M1...8.0.0-M2
