Relevant Changes in brXM 16

This page outlines the key changes introduced in brXM 16 compared to version 15.

Major Changes

Java 17 Requirement

brXM 16 requires Java 17. On the Bloomreach Cloud (OnDemand 2) hosting platform, the system automatically detects and uses the correct Java version for your deployed project distribution.

Maven Repository ID Updates

Default Maven repository IDs have changed from hippo-maven2** to bloomreach-maven2**. Update your Maven configuration to use the new repository IDs.

Activation and Mail Library Replacement

The following library replacements have been made:

  • com.sun.activation:jakarta.activation is replaced by org.eclipse.angus:angus-activation.
  • com.sun.mail:jakarta.mail is replaced by org.eclipse.angus:angus-mail.

Update your dependencies to reference the new Eclipse Angus libraries.

Javax to Jakarta Namespace Migration

brXM 16 applies the javax to jakarta namespace change. The following core libraries and APIs are upgraded:

  • 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

Review your codebase for any usage of the old javax.* namespaces and update to the corresponding jakarta.* namespaces as required.

Apache Wicket 10 Upgrade

brXM 16 uses Apache Wicket version 10. If your implementation project contains custom Wicket code, you must update it for compatibility with Wicket 10. Refer to the Migration to Wicket 10.0 guide for details.

EHCache Replaced with Caffeine

EHCache has been removed and replaced with the Caffeine caching library. If your project includes customizations that interact with caching, review and update them to work with Caffeine.

JVM Default Time Zone on Bloomreach Cloud

When running brXM 16.x on Bloomreach Cloud, the JVM default time zone is set to UTC. Any date or time processing that depends on the JVM default time zone will use UTC unless you explicitly configure a different time zone.

Changing Time Zone Behavior

  • CMS UI Time Zone
    You can configure the login page to allow users to select their time zone. By default, the CMS uses the browser's time zone, but you can also set a single time zone for all users.
    See: Configure the CMS login page (time zone selection dropdown)

  • JVM Default Time Zone
    To override the default, set the time zone explicitly as a JVM system property. Upload a properties file containing, for example, user.timezone=Europe/Amsterdam, and configure it as a Java System Properties file during deployment.

Minor Changes

  • Third-party libraries have been updated. For a complete list, see CMS-15882.
  • Maven plugins have been updated. For details, see CMS-15636.
Share Feedback
Page: /about/upgrade-guides/v15-v16/relevant-changes
Section: About
Category *