Documentation Home

BroadleafCommercePrivate - 5.1.1-GA

Released on February 17, 2017

This is the 1st patch release for Broadleaf Framework 5.1.x. This release contains a combination of bug fixes and some enhancements.

NOTE: If your project uses an Oracle Database, you will need to upgrade directly to 5.1.2-GA

Noteworthy Changes

Side by Side Fields in Admin

New with this release is the ability to associate fields in the admin and have them appear side-by-side. This can be achieved by adding the annotation associatedFieldName to a field. For example, by adding associatedFieldName = "weightUnitOfMeasure" to the weight field in, the weightUnitOfMeasure field will not appear along side (or side-by-side) with the weight field in the admin.

An at-a-glance view of the issues that were closed in this release:

Critical Bugs(5)

  • Retrieve Sandbox and its children in same session
  • Fixed bug where SKUs were not being correctly differentiated by all ProductOptions used in SKU generation during add to cart request validation if their ProductOptionValidationStrategyType was null
  • Fixed issue with Offer target and qualifier criteria not honoring subsequent changes on deploy.
  • Remove errant code in assetSelector.js that inadvertantly triggered a form submit
  • Set target criteria collection instead of adding during MT clone

Major Bugs(3)

  • Now persisting CategoryAttributes in same manner as ProductAttributes
  • Fixed bug where DynamicEntityDao was causing a StackOverflow during an infinite recursion caused by multiple levels of @Embeddable components
  • Added check in Sku update to skip product option changes for inventory updates

Minor Bugs(12)

  • Fixed an admin issue in listGrid.js/.css causing Category names to auto hide in Firefox
  • Fixed issue where clicking on the hints icon in the admin resulted in a blank page
  • Implemented javascript fixes for radio buttons and rule builders - RuleBuilders previously did not support Text Lists. This allows for comma separated strings that can use "Contains"
  • Fixed Thymeleaf issue where the MessageResolver Order attribute was not getting honored
  • Fixed gap where new attachFacet method was not calling back to the deprecated method by default
  • Removed the bootstrapcdn reference to font-awesome.min.css
  • Added null check for sku and sku.getCurrency() in VaildateAddRequestActivity
  • Allow admin Javascript errors to show on the frontend console and backend server log
  • Do not attempt to copy IndexFields with MultiTenant since they are not sandboxable
  • Added newline to description partial so that Thymeleaf 3 resolves the empty template correctly
  • Fix typo on PromotionMessageImpl column name index field
  • Fix the links in the Sandbox Workflow Item Approval/Changes list grid if dealing with a Type Entity (e.g. Product, PriceList)


  • Added search/workflow extensions necessary for Catalog Access Policies


  • Various polish around some admin APIs with minor icon placement fixes
  • Added in utility method to get file contents at a path
  • Added FileSystemUtils helper methods
  • Allow admin Javascript errors to show on the frontend console and backend server log
  • Added associatedField annotation to support side-by-side fields
  • ListGrid modal max-height calculation fixes
  • Add options if allowed when loading rule builder
  • Created Enums for rule operators and options
  • Add override dto classname and entity key functionality to rulebuilders
  • Created New AdminPresentation Property "canLinkToExternalEntity" for AdditionalForiegnKey fields. This is intended to be used to make an AdditionalForeignKey field be treated as a String rather than an external-link when displayed in a ListGrid (i.e., make it not a clickable link)
  • Added transaction rule identifier so that transaction related fields can be associated to a rule builder
  • Allow merge overrides on Group for collections and adorned target collections
  • Added createCatalog and createSiteCatalog repository methods
  • Allow empty @Transactional annotations on service methods to use the Broadleaf blTransactionManager
  • Added an ExceptionResolver to display a user-friendly error message instead of printing stack trace to browser
  • Added a security header filter to help protect against MIME and XSS attacks
  • Added short-term caching to sandBox entities and queries for better performance
  • Refactored the Broadleaf StringUtil.segmentInclusion method to improve performance
  • Added caching for AdminSecurityService.isUserQualifiedForOperationOnCeilingEntity()

Total Resolved Issues: 40