Broadleaf Microservices
  • v1.0.0-latest-prod

Release Notes for 1.8.1-GA

New Features & Notable Changes

Feature/Notable Change Impacted Services Links

Added passthrough cartFieldMapping endpoint to support CartOperationServices calling CatalogBrowseServices


Upgrade Guide

API Changes

Fixed Potential Endpoint Overlap between Catalog and Catalog Browse for Products

When running Catalog and Browse Services in the same app (e.g., Min or Balanced Cart), when a user overrides the read-product-by-id endpoint, they can effectively override the Catalog Browse read-product-details endpoint as well since the former’s path has a path variable (/products/{id}) that matches the latter’s (/products/details). This only causes problems in the case of an override because @GetMapping has higher precedence than @FrameworkGetMapping.

This has been addressed by adding additional request mappings to the Catalog Browse endpoints and defaulting usage to them by Cart Ops and Commerce SDK. We also added new mappings to other Browse endpoints for consistency.

This is backwards compatible since the old request mappings remain, we only added additional mappings for the same endpoint methods.

New Endpoints

Path Description

GET /browse/products

Equivalent to GET /products/details

GET /browse/categories

Equivalent to GET /categories/details

GET /browse/data-driven-enum

Equivalent to GET /data-driven-enums/details

GET /browse/products/cart-field-mappings

Equivalent to GET /products/cart-field-mappings

GET "/browse/search/catalog

Equivalent to GET /search/catalog

GET /browse/search/catalog/suggest

Equivalent to GET /search/catalog/suggest

GET /browse/marketing-messages

Equivalent to GET /marketing-messages

Configuration Properties

  • broadleaf.catalogbrowse.catalogprovider.cart-field-mappings-uri

    • Description: URI path to retrieve a list of field mappings between product and cart item

    • Default value: /cart-field-mappings