brXM V16.0 Release Notes
Overview
brXM version 16.0 introduces major updates to the technical stack and product capabilities. This release note summarizes the key changes, upgrade requirements, and support timelines. For a complete list of release notes, see Release Notes Overview.
All features and changes described here apply to Bloomreach Content unless otherwise specified.
Significant Updates in Version 16
Java 17, Jakarta Namespace, Tomcat 10
brXM 16.0 now requires Java 17. This update aligns Bloomreach Content with current Java standards and enables new development features. For details on Java 17, refer to the JDK 17 release notes.
brXM 16 transitions from the javax to the jakarta namespace. For background, see Jakarta EE Namespace Progress.
Key dependency updates in brXM 16:
- Jakarta Servlet API 6
- Spring Boot 3
- Spring 6
- Apache CXF 4
- XML Web Services API 3
- XML Binding API 3
- RESTful Web Services 3
- Annotations API 2
- JAXB Runtime 3
- Mail API 2
brXM 16 requires Tomcat 10 for deployment. Tomcat 9 and 8.5 are no longer supported.
Wicket 10, Spring, and Freemarker Upgrades
brXM 16 upgrades the Apache Wicket UI framework to version 10.0. Notable changes:
- The new
wicket-testermodule is required for unit testing withWicketTester. - HTTP2 support is now integrated in the Wicket core module.
- Only jQuery 3 is included; jQuery 1 and 2 are removed.
- For details, see the Wicket 10.0.0 release announcement.
Spring Boot is upgraded to 3.3.0 and is now the primary version for dependency management. Spring Web Framework is upgraded to 6.1.8. Key improvements:
- Java 17 is now the baseline.
- Migration from Java EE to Jakarta EE 10 APIs.
- Enhanced observability with Micrometer and Micrometer Tracing.
Freemarker is upgraded to version 2.3.33, supporting the javax.servlet to jakarta.servlet change. Improvements include:
- Direct property access for Java Records in templates (
obj.property). - Faster string comparisons with the
incompatible_improvementssetting. - Improved performance for large sequence concatenation and reading.
- New template processing tracer for monitoring and analysis.
Other Improvements
For Developers
- Default Maven repository IDs are now
bloomreach-maven2**instead ofhippo-maven2**. - All Maven plugins are updated to the latest applicable versions.
- Most third-party libraries are upgraded to current versions.
- The
com.sun.activation:jakarta.activationlibrary is replaced byorg.eclipse.angus:angus-activationandjakarta.activation:jakarta.activation-api. - The
com.sun.mail:jakarta.maillibrary is replaced byorg.eclipse.angus:angus-mailandjakarta.mail:jakarta.mail-api. - Eclipse Angus mail and activation libraries are now used and maintained.
- EHCache is replaced by the Caffeine caching library.
- Swagger is upgraded from v2 to v3 in Plain JAX-RS Services.
- Tomcat version in local developer environments (Cargo) and Docker is upgraded to 10.1.
For End Users
- Resolved an issue where experiment-related functionalities on a component were blocked if another user had previously used the component.
- Fixed the missing warning for uploading incompatible file types in the image picker.
- Component parameters defined as "Number" now accept decimal values in Experience Manager.
Deprecations and Removals
This release deprecates and removes several libraries and features. Review the upgrade documentation for full impact.
- With the upgrade to Swagger v3, the default bean
swaggerBeanConfigis removed. A new bean is implemented for OpenAPI configuration. In versions before brXM 16, the default bean name changes fromswaggerBeanConfigtohstOpenApiBeanConfig. ConcurrentLoginFilterandConcurrentLoginListenerare removed.- Several deprecated classes are removed from Bloomreach Content.
Bloomreach SPA SDK Updates
Bloomreach SPA SDK v23.3.0 is now available. The Angular SDK (ng-sdk) supports Angular 17.
See the SPA SDK releases for details.
Bloomreach Cloud Updates
Cloudflare Brotli Compression Update
Manual configuration of Cloudflare’s Brotli compression will be discontinued on August 15, 2024. After this date, Brotli compression is automatically applied to all zones. Enterprise clients can adjust compression settings using Compression Rules.
For questions or requests regarding compression settings, contact Bloomreach support at https://support.bloomreach.com/.
Notices
Compatibility with Bloomreach Cloud
brXM 16 is compatible only with BRC release v23 and later. All BRC stacks will be upgraded to version 23 by July 12, 2024. To upgrade to brXM 16 before this date, contact Bloomreach support at https://support.bloomreach.com/.
JVM Default Time Zone on Bloomreach Cloud
When running brXM v16.x on Bloomreach Cloud, the JVM default time zone is set to UTC. Date and time processing that relies on the JVM default time zone will use UTC unless explicitly configured.
Changing Time Zone Behavior
- CMS UI Time Zone
Configure the login page time zone dropdown to allow users to select their time zone at login (defaulting to the browser time zone). You can also configure a single time zone for all users.
See: Configure the CMS login page (time zone selection dropdown) - JVM Default Time Zone
Set the time zone explicitly as a JVM system property. Upload a properties file (e.g.,user.timezone=Europe/Amsterdam) and configure it as a Java System Properties file during deployment.
See: Set Environment Configuration Properties (specify configuration file as Java system property)
Major Release and Upgrade Requirements
v16.0 is a major release and is not backward compatible with previous versions. Upgrading from the latest minor version requires additional steps. For detailed upgrade instructions, see the Upgrade to brXM 16 documentation (login required). For an overview of all upgrade instructions for minor versions, see Upgrade Introduction.
Supported Technologies
Full system requirements and a detailed table of maintained third-party compatibility are available in the System Requirements.
End-of-Life, Support, and Maintenance
Terminology
-
Supported product version:
Supported versions receive helpdesk support as described in your service level agreement (SLA). If a bug is found in a supported but non-maintained version, fixes are only applied to maintained versions. You must upgrade to a maintained version to receive the fix. -
Maintained product version:
Maintained versions receive code updates, security patches, and bug fixes. System requirements for third-party libraries are kept current. Bloomreach does not provide support for third-party system requirement providers (such as databases or Java), but supports usage with certified providers.Non-maintained versions do not receive updates and may contain unresolved bugs or security vulnerabilities.
-
End-of-life product version:
End-of-life versions are neither maintained nor supported. These may be available in archives but can be removed without notice.
Support Status Table
| Version | Planned end date of Standard Support | Planned end date of Premium Plus Support | Original major version release date |
|---|---|---|---|
| 12.6 | No Support | No support | July 2017 |
| 13.4 | No Support | No support | Jan 2019 |
| 14.7 | December 2024 | December 2025 | Dec 2019 |
| 15.6 | December 2025 | December 2026 | April 2022 |
| 16.0 | December 2026 | December 2027 | June 2024 |
Supported versions may differ depending on contractual agreements. Versions not listed are end-of-life.
Versions highlighted in orange are actively maintained and receive bug fixes and product improvements.
Security Notes
This release updates third-party dependencies with known vulnerabilities. Keep your systems current with announced product releases.
Availability
brXM 16.0 is available as of June 27, 2024. The open source release will be available approximately two years later, following the Bloomreach release policy.