It was a great long adventure to get our fish here. Sorry it took so long, but we struggled with many changes not just in this project, but also in our infrastructure, and finally even in Maven Central, which was routinely stable many years.
Our growing team resolved everything, so our fish can finally flow in your pool!
Read about what's new in GlassFish 7.1.0 in this OmniFish blog article.
New Features
- Microprofile Health
- Variable references can be also resolved from environment variables by @OndroMih in #25541
- Added
<module-name>/<bean-name>syntax by @pzygielo and @avpinchuk in #25573 and #25586 - Shorter certificate DN: GlassFish, Eclipse Foundation, no address by @dmatej in #25560
- Security warning: the domain1 should not be used on production as it contains compromised private key. Create a new domain with a new key and keep it safe!
- Improved timeout management for admin commands by @dmatej in #25580
- 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
- Improve Admin CLI with JLine by @Thihup in #25723
- History, autocomplete and offering parameters. Try
asadmin -Iand press the TAB key!
- History, autocomplete and offering parameters. Try
- More flexibility to control server start by @dmatej in #25790
- If server fails to start, the command prints the output of the failing process. The behavior can be also enforced using
-o. - The
asadmincommand now prints some useful information about the server.
- If server fails to start, the command prints the output of the failing process. The behavior can be also enforced using
Breaking Changes
-
Supported JDK range changed from 11-21 to 17-25.
-
Introduced JPMS Bootstrap
-
Migrating keystores from JKS to PKCS12, fixed TCK tests by @dmatej in #25517
-
Removed abandoned pieces
-
Remove Solaris service installer by @avpinchuk in #25658
-
Remove default keystore and truststore from Embedded GlassFish (for security reasons) - custom keystore and truststore should be provided by system properties if needed
More details about breaking changes: #25776
Security Fixes
- Revisited security.policy files and added to embedded by @dmatej in #25564
- Providing default SSLContextProvider by @dmatej in #25662
Fixes
- Fix #25444 Fix possible nullpointer. Fix avoid begin() new transaction call in case of rollback. by @escay in #25477
- Fixed race condition in LoggingOutputStream by @dmatej in #25470
- 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
- The asadmin verify-domain-xml command does not need Globals on classpath by @dmatej in #25495
- Add sniffer for MicroProfile REST Client by @OndroMih in #25492
- Fixed logs in JWS appclient by @dmatej in #25508
- Fix FQCN of ProxyHandlerImpl by @pzygielo in #25524
- Add missing EE 10 schemas: JSP & Faces by @OndroMih in #25532
- Synchronize annotation in message by @pzygielo in #25534
- 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
- Do not declare
Main-Classes by @pzygielo in #25554 - 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
- The java.security.auth.login.config system property must be an URL by @dmatej in #25566
- 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
- Do not swallow InterruptedException by @pzygielo in #25605
- Fixes, improvements and cleanup in GlassFish Job management.
- DetachAttachITest - removed sleep by @dmatej in #25556
- Fixed race conditions in detached job management by @dmatej in #25574
- Fixed race condition in detached job scheduling by @dmatej in #25592
- Fixed detached commands mistake + Jenkinsfile changes by @dmatej in #25609
- Fixes processing of the detached admin commands by @avpinchuk in #25669
- Fixes
WebappClassLoaderrace condition ondefinePackageby @avpinchuk in #25619 - Fix #25617 Monitoring data become unavailable after updating configuration by @tnagao7 in #25618
- Supply parameter to logged message by @pzygielo in #25651
- Load
GlassFishRoleMapperbefore installing the system-wide Exousia policy by @avpinchuk in #25644 - Fixed appclient classpath by @dmatej in #25667
- 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
- Fix MicroProfile Config in Embedded - add transitive dependencies by @OndroMih in #25708
CommandResource: Fixes method names in the log messages by @avpinchuk in #25725- Embedded GlassFish - fixes related to system properties by @OndroMih in #25724
- Fixes in env vars references by @OndroMih in #25732
- Allow to specify options without equals in Glassfish Embedded by @Thihup in #25747
- Fix Command Logger button in Admin Console by @OndroMih in #25748
- Fixed NPEs in JDBC pooling + extended performance test by @dmatej in #25756
- Fix #25715 Enabling monitoring for JDBC connection pools unexpectedly enables monitoring for non-JDBC connection pools by @tnagao7 in #25716
- Always delegate resolving MicroProfile APIs even with delegate=false by @OndroMih in #25770
- getUnAliasedPwd - fixed condition and added log by @dmatej in #25781
- Remove duplication of CDI extensions by @OndroMih in #25769
- Fixes in monitoring, enable monitoring in Embedded GlassFish by @OndroMih in #25752
- Added disconnecting HttpURLConnection and replaced ProcessUtils.isListening body by @dmatej in #25811
- Fixed NPE and noticed NPE in JDK code by @dmatej in #25813
Updated Dependencies
- Update Nimbus to 10.4.2 by @arjantijms in #25674
- Integrate Jersey 3.1.11 by @pzygielo in #25679
- Bump org.apache.commons:commons-lang3 from 3.13.0 to 3.18.0 in /appserver/tests/tck/microprofile/rest-client by @dependabot[bot] in #25600
- Updated commons-lang3 version by @dmatej in #25623
- Update MicroProfile REST Client to 4.0 by @avpinchuk in #25681
- Upgrade command-security-maven-plugin to support build on Java 25 by @OndroMih in #25707
- Upgrade easymock to run tests on Java 25 by @OndroMih in #25710
- Updated Derby to 10.16.1.1 by @dmatej in #25740
- Upgrade dojo.js (7.x) by @OndroMih in #25806
Improvements and Maintenance
- Improved restarts of the server
- Improved Derby and CommonClassLoaderService initialization by @dmatej in #25468
- Classloaders parallelCapable and named by @dmatej in #25490
- Expose services with local parent locator scope (e.g. @runlevel) to the service locator in system apps by @OndroMih in #25485
- Improve --add-opens - naming module by @dmatej in #25537
- Faster detection of implicit CDI archives during deployment by @OndroMih in #25520
- DomainBuilder must not swallow failures by @dmatej in #25558
- New SystemProperties logging global changes by @dmatej in #25569
- Several smaller fixes and improvements by @dmatej in #25577
- Improvements in GJULE by @dmatej in #25479
- Decrease log level of logs in command execution by @OndroMih in #25688
- New ResourceAttributes class to have type safe attributes + related cleanup by @dmatej in #25700
- Refactoring and fixing JDBC pools + tests by @dmatej in #25702
- Define built-in config name properties for config name and domain name by @OndroMih in #25744
- Runnable Embedded GlassFish improvements (stop on error, print message at the end) by @OndroMih in #25745
- Migrate usage of deprecated field by @pzygielo in #25765
- Remove unused resources by @pzygielo in #25763
- Improve
SingletonLifeCycleManagerby @avpinchuk in #25762 - Removed SLogger - messages were often unresolved by @dmatej in #25782
- Set of smaller improvements by @dmatej in #25797
- Quick cleanup around HelpCommand by @dmatej in #25798
- GFLauncher revisited by @dmatej in #25801
- ListDomainsCommand now lists all admin endpoints, cleanup by @dmatej in #25802
- Code cleanup in "Ant Tests Reporter" to make it more robust by @dmatej in #25815
- Migrate away from deprecated DerbyDB classes to replacements by @pzygielo in #25473
- Remove unused parameter by @pzygielo in #25486
- Refactoring of usages of system and environment constants by @dmatej in #25509
- Group of cleanup commits and improvements by @dmatej in #25562
- Fix variable assignment for GlassFish instance in EmbeddedVirtualServ… by @HamzaElzarw-2022 in #25610
- Do not produce result as it's not used anyway by @pzygielo in #25620
- Drop unused method parameter by @pzygielo in #25621
- 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
- Remove empty
mainmethod by @pzygielo in #25675
CI Infrastructure
- Updated the release notes in GlassFish 7 guide by @Ariho-Seth in #25648
- Upload PDFs built in workflow by @pzygielo in #25653
- Fixes GitHub workflow build name for Ubuntu by @avpinchuk in #25671
- Display GitHub workflow names in pull requests by @OndroMih in #25654
- Bump actions/stale from v3 to v9 by @pzygielo in #25526
- Removed maven download from GitHub CI - 24.04 already contains that by @dmatej in #25542
- Added keeping server.logs from tests on GH CI + synced files by @dmatej in #25579
- Build changes by @dmatej in #25604
- Release of 7.1.0-M1 and updated release process by @dmatej in #25718
- Add Jenkins Checkstyle plugin to show info when checkstyle fails the build by @OndroMih in #25754
- Publish surefire and failsafe reports by @dmatej in #25772
- Optimizing CI by @dmatej in #25773
- GitHub Actions updates + longer timeout for LoggingPrintStreamTest by @dmatej in #25780
Tests
- Updated Arquillian GF Container - fixes OOME in CDI and Validation TCK by @dmatej in #25687
- Addded TCK security and updated arquillian glassfish container by @dmatej in #25663
- Fixed TestNG version compatible with these TCKs by @dmatej in #25704
- ProgressCustomCommand now uses Java Time api by @dmatej in #25789
- Improved closing resources in embedded tests by @dmatej in #25799
- Refactored SecureWebAppTest by @dmatej in #25561
- Reproducing and fixing the gjule test instability by @dmatej in #25544
- SshClusterITest - added --interactive=false by @dmatej in #25507
- Stabilizing ClusterITest and EjbClassGeneratorFactoryBenchmarkTest by @dmatej in #25484
Documentation
- 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
- Updated documentation of the known issue with Windows signals by @dmatej in #25515
- Issue 24900 Documentation improvements. Some ConnectionPool changes. Removal of selfmanaged option. by @escay in #25527
- 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
- Added info for Jakarta 10 and 11 on the compatibility web page by @Ariho-Seth in #25606
- Replaced references to release version with a variable by @Ariho-Seth in #25643
- 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
update-node-sshpage links in documentation by @avpinchuk in #25665 - Updated the installation guide by replacing obsolete info with GF7 info by @Ariho-Seth in #25641
- GlassFish release notes updated (new features, MicroProfile, extensions) by @OndroMih in #25652
- Updated the GlassFish Upgrade guide by @Ariho-Seth in #25661
- Simplify and refactor the GlassFish upgrade guide by @OndroMih in #25680
- Update MicroProfile info in the website for the latest release by @OndroMih in #25686
- Improve website by @OndroMih in #25735
- Fix typos and linguistic errors in documentation / hacktoberfest by @survivant in #25731
- Update Docker images documentation link by @OndroMih in #25736
- Update docs to prefer PKCS12 certificates by @OndroMih in #25757
- Fix 'port' to 'portNumber' in JDBC documentation by @OndroMih in #25775
- Update compatibility information for GlassFish versions by @OndroMih in #25788
- Documentation for --server-output, plus fixes after testing by @dmatej in #25807
New Contributors
- @Ariho-Seth made their first contribution in #25606
- @HamzaElzarw-2022 made their first contribution in #25610
- @survivant made their first contribution in #25731
Full Changelog: 7.0.25...7.1.0
