Broadleaf Microservices
  • v1.0.0-latest-prod

Catalog Browse Release Notes for 2.1.0-GA

Tip
The 2.x versions are Spring Boot 3 compatible.

Requirements

  • JDK 17 is required for Broadleaf release trains 2.0.0-GA, and beyond.

New Features & Notable Changes

  • Added support for populating parent category hierarchy for Product

    • Added categoryIdsWithParents to Product to support offer and pricing flows with category restriction targeting a parent category

      • The categoryIds for the MarketingMessages retrieval flow will now be populated from this field

  • Updated ContentField#attributes to be able to persist any object value.

  • Reduced inter-service HTTPS calls and added support for optional direct method calls for Marketing Messages to enhance performance.

  • Enable feature for Jackson ObjectMapper so that query parameters can be converted to DTO when fetching Product Details.

  • Introduced support for Product Characteristics and Product Terms.

  • Introduced support for recurring and usage pricing concepts.

    • Primarily this looks like being able to include characteristics marked as targetableForPricing and product terms in PriceableTarget payloads.

  • Includes a number of enhancements around product detail hydration.

    • Introduced ability to fully hydrate Products in Search Requests—not just pricing, assets, or tags. This behavior is controlled by a parameter on the Catalog Search request: hydrateFully. False by default.

    • Introduced ability to minimize the payload size for Assets so that they don’t include the ContextState, which is not valuable in a commerce scenario. Controlled by broadleaf.catalogbrowse.catalogprovider.asset-minification-enabled, which is true by default.

    • Added the ability to pass RSQL filters to filter the assets or tags fetched when hydrating them onto Search Results using the assetFilters and tagFilters params.

  • Introduced support for Recommendation Engine Services via Browse Content.

Bug Fixes

  • Fixed issue where an Unsupported Operation exception was being thrown when fetching Product Details due to MultiValueMap immutability.