Broadleaf Microservices
  • v1.0.0-latest-prod

Release Notes for 1.7.0-GA

New Features & Notable Changes

  • Added support for variant add-on pricing overrides

    • Allows the user to control price overrides for add-ons based on the selected variant. See CatalogService for more detail.

    • e.g. Warranty pricing may vary depending on what configuration (variant) is selected.

  • Updated service client to use Catalog Browse authorized client for service to service requests

Bug Fixes

  • Fixed: Removed hard coded dependency version for maven-resources-plugin in favor of dependency management inheritance

  • Fixed: Offers not applying because category ids and product tags were not mapped to line item attributes

Upgrade Guide

Auth Configuration

Change in default client names for service-to-service communication

The default client configurations have changed for service-to-service communication. Now, each service that makes calls will have a single client to service all of them instead of having a client per service that receives calls. Therefore, the default client configurations for catalog, pricing, and search have been removed and replaced with the following:

spring:
  security:
    oauth2:
      client:
        registration:
          catalogbrowseclient:
            authorization-grant-type: client_credentials
            client-id: catalogbrowseclient
            client-secret: catalog_browse_secret
        provider:
          catalogbrowseclient:
            token-uri: https://localhost:8443/oauth/token

Each of ExternalCatalogProvider, ExternalOfferProvider, ExternalPricingProvider, and ExternalCatalogSearchProvider have been updated to use the catalogbrowseclient by default. For more details on the full scope of these changes, please review the AuthServices release notes.

Along with this change the following properties were added to support changing the name of the registered clients:

  • broadleaf.catalogbrowse.catalogprovider.service-client

    • Description: The service client used when calling CatalogServices from Catalog Browse.

    • Default value: "catalogbrowseclient"

  • broadleaf.catalogbrowse.catalogsearchprovider.service-client

    • Description: The service client used when calling SearchServices from Catalog Browse.

    • Default value: "catalogbrowseclient"

  • broadleaf.catalogbrowse.offerprovider.service-client

    • Description: The service client used when calling OfferServices from Catalog Browse.

    • Default value: "catalogbrowseclient"

  • broadleaf.catalogbrowse.pricingprovider.service-client

    • Description: The service client used when calling PricingServices from Catalog Browse.

    • Default value: "catalogbrowseclient"