8.0.0-M13
Pre-releaseEclipse GlassFish 8 is an application server, implementing Jakarta EE. This release is corresponding with the Jakarta EE 11 Web Profile Final and the Jakarta EE 11 Platform Final specification.
Jakarta EE 11 Platform is the final release of Jakarta EE 11. Jakarta EE 11 is complete; all updated APIs for Jakarta EE 11 have been included and all compatible implementations thereof passed their respective TCKs.
GlassFish 8 M13 incorporates all final APIs from the Jakarta EE 11 release plan.
Specifically new for this release is the native implementation of Jakarta Data, implemented via a much improved Eclipse JNoSQL.
8.0.0-M13 also incorporates all changes from the 7.1.x branch, and roughly corresponds to 7.1.0-M1. The core modernization from GlassFish 7.1.0 is applied to GlassFish 8 M13 as well. For reference;
The following is the full list of Jakarta EE 11 Web Profile and Jakarta EE 11 Platform APIs included. All of the updated APIs are final.
| API | Implementation | TCK |
|---|---|---|
| jakarta.el-api.version 6.0.0 | Expressly 6.0.0 | jakarta-expression-language-tck-glassfish |
| jakarta.annotation-api.version 3.0.0 | ||
| jakarta.cdi-api.version 4.1.0 | Weld 6.0.3.Final | jakarta-cdi-tck-glassfish |
| jakarta.interceptor-api.version 2.2.0 | Weld 6.0.3.Final | jakarta-cdi-tck-glassfish |
| jakarta.rest-api.version 4.0.0 | Jersey 4.0.0-M4 | jakarta-rest-tck-glassfish |
| jakarta.servlet-api.version 6.1.0 | (internal in GlassFish 8.0.0-M13) | jakarta-servlet-tck-glassfish |
| jakarta.pages-api.version 4.0.0 | WaSP 4.0.0 | jakarta-pages-tck-glassfish |
| jakarta.websocket-api.version 2.2.0 | Tyrus 2.2.0 | jakarta-websocket-tck-glassfish |
| jakarta.authorization-api.version 3.0.0 | Exousia 3.0.0 | jakarta-authorization-tck-glassfish |
| jakarta.authentication-api.version 3.1.0 | Epicyro 3.1.0 | jakarta-authentication-tck-glassfish |
| jakarta.persistence-api.version 3.2.0 | EclipseLink 5.0.0-B10 | jakarta-persistence-tck-glassfish |
| jakarta.validation-api.version 3.1.1 | Hibernate Validator 9.0.1.Final | jakarta-validation-tck-glassfish |
| jakarta.security-api.version 4.0.0 | Soteria 4.0.1 | jakarta-security-tck-glassfish |
| jakarta.concurrent-api.version 3.1.0 | Concurro 3.1.0-M6 | jakarta-concurrency-tck-glassfish |
| jakarta.faces-api.version 4.1.2 | Mojarra 4.1.4 | jakarta-faces-tck-glassfish |
JDK 17 is not longer available, these builds were only intended for TCK purposes.
For the regular version of GlassFish 8, JDK 21 is required as a minimum and the final version of GlassFish 8 is targeted to certify on JDK 21 for Jakarta EE 11.
GlassFish 8 M13 fully passes the final Jakarta EE 11 Web Profile TCK and the final Jakarta EE 11 Platform TCK.
Being an early access milestone build, this build should obviously only be used for testing.
New Features
- Initial rough integration of JNoSQL Jakarta Data by @arjantijms in #25587
- A working integration of Data into GlassFish (multiple EM support) by @OndroMih in #25597
From GlassFish 7.1.x
- Add Microprofile Health by @Thihup in #25186
- Update MicroProfile REST Client to 4.0 by @avpinchuk in #25681
Breaking Changes
From GlassFish 7.1.x
- Removed embedded-nucleus - nobody used it, we did not test it by @dmatej in #25557
- Several changes in #25183 may break tools that rely on undocumented GlassFish internals
Improvements
- Execute SQL against JDBC datasources by @arjantijms in #25608
- Jakarta Data transactional interceptor plus fixes in class scanner by @OndroMih in #25613
- Add missing EE 11 schemas by @OndroMih in #25533
- Improve Data TCK Runner to add a default persistence unit by @OndroMih in #25611
- Added transaction dependency to data tck runner by @arjantijms in #25614
- More on Jakarta Data - respect provider, fix validation by @OndroMih in #25645
- Destroy on manager should call destroy on service, not refresh by @arjantijms in #25691
From GlassFish 7.1.x
- Variable references can be also resolved from environment variables by @OndroMih in #25541
- Expand support for MicroProfile APIs to GlassFish Web Profile and Embedded by @OndroMih in #25703
- Created asadmin.java and nadmin.java by @dmatej in #25714
- Add sniffer for MicroProfile REST Client by @OndroMih in #25492
- Redesign of GlassFish bootstrap by @dmatej in #25183
- Faster detection of implicit CDI archives during deployment by @OndroMih in #25520
- Improved Derby and CommonClassLoaderService initialization by @dmatej in #25468
- Migrating keystores from JKS to PKCS12, fixed TCK tests by @dmatej in #25517
- Improvements in GJULE by @dmatej in #25479
- Classloaders parallelCapable and named by @dmatej in #25490
- Improved stopping local servers by @dmatej in #25498
- Expose services with local parent locator scope (e.g. @runlevel) to the service locator in system apps by @OndroMih in #25485
- Improving ProcessManager stability by @dmatej in #25538
- Improved timeout management for admin commands by @dmatej in #25580
- Support
<module-name>/<bean-name>syntax by @pzygielo in #25573 - Support
<module-name>/<bean-name>syntax in@DependsOnby @avpinchuk in #25586 - Shorter certificate DN: GlassFish, Eclipse Foundation, no address by @dmatej in #25560
Security Fixes (from GlassFish 7.1.x)
- Revisited security.policy files and added to embedded by @dmatej in #25564
- The java.security.auth.login.config system property must be an URL by @dmatej in #25566
- Load
GlassFishRoleMapperbefore installing the system-wide Exousia policy by @avpinchuk in #25644
Fixes
- Fix microprofile config again by @arjantijms in #25629
- Fixed MicroProfile Rest TCK by @arjantijms in #25637
- Add comment and fix import by @arjantijms in #25638
- Fix leak in the events listener storage by @arjantijms in #25692
- Fixed JDBC tests after merge from master branch by @dmatej in #25712
From GlassFish 7.1.x
- Fixed appclient classpath by @dmatej in #25667
- Fixed race condition in LoggingOutputStream by @dmatej in #25470
- Fix 25444 Fix possible nullpointer. Fix avoid begin() new transaction call in case of rollback. by @escay in #25477
- Fixed log messages - throwable is not a parameter by @dmatej in #25488
- Ensure build CDI extensions are always returned from DeploymentImpl by @OndroMih in #25491
- Fixed checking of free ports on create-domain with --checkports=false by @dmatej in #25497
- TemplateInfoHolder - do not hide the cause of the problem! by @dmatej in #25496
- Fixed logs in JWS appclient by @dmatej in #25508
- Fix FQCN of ProxyHandlerImpl by @pzygielo in #25524
- Reproducing and fixing the gjule test instability by @dmatej in #25544
- Fixed another race condition in ProcessManager by @dmatej in #25547
- Fix #25549 Non-GMS Cluster fails to start after GMS Cluster is started by @kaido207 in #25550
- DomainBuilder must not swallow failures by @dmatej in #25558
- Excluded module-info.class files poisoning embedded packages by @dmatej in #25559
- Fixed bug of 2011 - hostname was resolved as path by @dmatej in #25565
- Fixed race conditions in detached job management by @dmatej in #25574
- Fixed race condition in detached job scheduling by @dmatej in #25592
- Fixes scattered web archive processing by @avpinchuk in #25581
- Fix cleanup on deployment error by @OndroMih in #25596
- Fix #25584 The message which is "resource not found" is outputed when sending a javamail by @kaido207 in #25585
- Fix #25588 RemoveCount is not incremented when @Remove-annotated method is called by @tnagao7 in #25589
- Fixed detached commands mistake + Jenkinsfile changes by @dmatej in #25609
- Fix variable assignment for GlassFish instance in EmbeddedVirtualServ… by @HamzaElzarw-2022 in #25610
- Fixes
WebappClassLoaderrace condition ondefinePackageby @avpinchuk in #25619 - Fix #25617 Monitoring data become unavailable after updating configuration by @tnagao7 in #25618
- Fixes processing of the detached admin commands by @avpinchuk in #25669
- Fix #25689 HTTP status 404 in the admin console help window by @tnagao7 in #25690
- Fix leak in the events listener storage by @arjantijms in #25693
- Fixed asadmin get -m for monitoring by @dmatej in #25699
- Refactoring and fixing JDBC pools + tests by @dmatej in #25702
- Fix MicroProfile Config in Embedded - add transitive dependencies by @OndroMih in #25708
- Fix #25715 Enabling monitoring for JDBC connection pools unexpectedly enables monitoring for non-JDBC connection pools by @tnagao7 in #25716
- Add missing EE 10 schemas: JSP & Faces by @OndroMih in #25532
- Several smaller fixes and improvements by @dmatej in #25577
Maintenance
- Integrate Jersey 4.0.0-M3 by @senivam in #25684
- Data tck runner by @arjantijms in #25598
- Simplify the Data TCK runner by @OndroMih in #25624
- Use final 6.6.0 OpenMQ release by @pzygielo in #25528
- Update various versions in poms by @arjantijms in #25622
- Upgrade JNoSQL to 1.1.10. Move OSGi bundle to GlassFish by @OndroMih in #25647
- Merge master to 8 by @dmatej in #25640
- Update TCK Arquillian container to 2.1.1 by @arjantijms in #25682
- Update command security plugin to 1.0.20 by @arjantijms in #25683
- Merge from master to 8.0 by @dmatej in #25711
- Add release profile to pom by @arjantijms in #25717
From GlassFish 7.1.x
- Updated Arquillian GF Container - fixes OOME in CDI and Validation TCK by @dmatej in #25687
- Fixed TestNG version compatible with these TCKs by @dmatej in #25704
- Stabilizing ClusterITest and EjbClassGeneratorFactoryBenchmarkTest by @dmatej in #25484
- Fixed Microprofile Health TCK by @dmatej in #25636
- Fixes
update-node-sshpage links in documentation by @avpinchuk in #25665 - Issue 24900 Documentation improvements. Some ConnectionPool changes. Removal of selfmanaged option. by @escay in #25527
- New SystemProperties logging global changes by @dmatej in #25569
- New ResourceAttributes class to have type safe attributes + related cleanup by @dmatej in #25700
- Decrease log level of logs in command execution by @OndroMih in #25688
- Fix for Security TCK - default SSLContextProvider by @dmatej in #25662
- Addded TCK security and updated arquillian glassfish container by @dmatej in #25663
- Next version is 7.1.0 by @arjantijms in #25474
- Migrate away from deprecated DerbyDB classes to replacements by @pzygielo in #25473
- Remove unused parameter by @pzygielo in #25486
- The asadmin verify-domain-xml command does not need Globals on classpath by @dmatej in #25495
- SshClusterITest - added --interactive=false by @dmatej in #25507
- Add maven coordinates links to download pages by @OndroMih in #25504
- Add instructions in README on how to find the built artifacts by @OndroMih in #25502
- Refactoring of usages of system and environment constants by @dmatej in #25509
- Updated documentation of the known issue with Windows signals by @dmatej in #25515
- Synchronize annotation in message by @pzygielo in #25534
- Jakarta EE 11 Platform TCK results for GlassFish 8 M12 by @arjantijms in #25536
- Removed maven download from GitHub CI - 24.04 already contains that by @dmatej in #25542
- Improve --add-opens - naming module by @dmatej in #25537
- Several corrections to the Jakarta EE 11 result page by @arjantijms in #25543
- Do not declare
Main-Classes by @pzygielo in #25554 - DetachAttachITest - removed sleep by @dmatej in #25556
- Refactored SecureWebAppTest by @dmatej in #25561
- Group of cleanup commits and improvements by @dmatej in #25562
- Added keeping server.logs from tests on GH CI + synced files by @dmatej in #25579
- Removed osgiversion-maven-plugin and updated deploy plugin config by @dmatej in #25591
- Update NOTICE.md with Grizzly and SBOM info by @OndroMih in #25595
- Updated MAVEN_OPTS in Jenkinsfile + updated asciidoc maven plugin by @dmatej in #25599
- Build changes by @dmatej in #25604
- Do not swallow InterruptedException by @pzygielo in #25605
- Added info for Jakarta 10 and 11 on the compatibility web page by @Ariho-Seth in #25606
- Drop unused method parameter by @pzygielo in #25621
- Do not produce result as it's not used anyway by @pzygielo in #25620
- Remove unused classes by @pzygielo in #25630
- Remove unused method by @pzygielo in #25632
- Remove unused field KeystoreManager.LOG by @pzygielo in #25634
- Remove unused parameter config in copyCertificatesToTrustStore method by @pzygielo in #25635
- Remove unused duplicate class AppserverServiceType by @avpinchuk in #25633
- Replaced references to release version with a variable by @Ariho-Seth in #25643
- Updated the installation guide by replacing obsolete info with GF7 info by @Ariho-Seth in #25641
- Updated the release notes in GlassFish 7 guide by @Ariho-Seth in #25648
- Supply parameter to logged message by @pzygielo in #25651
- Upload PDFs built in workflow by @pzygielo in #25653
- GlassFish release notes updated (new features, MicroProfile, extensions) by @OndroMih in #25652
- Display GitHub workflow names in pull requests by @OndroMih in #25654
- Remove Solaris service installer by @avpinchuk in #25658
- Removed references to the Update Tool in docs by @Ariho-Seth in #25655
- Remove all Distributed Component Object Model (DCOM) references by @avpinchuk in #25664
- Fixes GitHub workflow build name for Ubuntu by @avpinchuk in #25671
- Remove empty
mainmethod by @pzygielo in #25675 - Updated the GlassFish Upgrade guide by @Ariho-Seth in #25661
- Update MicroProfile info in the website for the latest release by @OndroMih in #25686
- Unmake gf-client runnable JAR by @pzygielo in #25698
- Simplify and refactor the GlassFish upgrade guide by @OndroMih in #25680
New Contributors
- @Ariho-Seth made their first contribution in #25606
- @HamzaElzarw-2022 made their first contribution in #25610
Full Changelog: 8.0.0-M12...8.0.0-M13