Broadleaf Commerce 6.1.10-GA
Released on January 21, 2022
Overview
This is the 10th patch release for Broadleaf Framework 6.1.x. To upgrade a 6.1.x application to the 6.1.10-GA release, it should only require updating the parent pom.xml broadleaf-boot-starter-parent
to 6.1.10-GA.
New and Noteworthy
Library Upgrades
Following core libraries were upgraded:
- Spring Security 5.2.12.RELEASE --> 5.2.15.RELEASE
- Hibernate 5.3.23.Final --> 5.3.25.Final
Filename of the static assets
Images with some special characters in the filename causes errors in the admin. The image links generated with those characters are invalid and images do not show.
To resolve this issue, some properties and logic are added to replace the special characters with known valid characters. These are the new properties with default values:
#Property to enable this logic. If set to true, error will be presented instead of invalid chars replacement
static.asset.exception.on.invalid.char.in.filename=false
#Set of the invalid characters that causes issues if present in filename.
static.asset.invalid.chars.in.filename=+,*,%
#The character that will replace invalid chars from above
static.asset.invalid.chars.replacement=_
Parent Category Delete validation
A category should not be deleted if it has children categories. Therefore, a validation has been added to prevent the deletion of a parent category. This can be enabled/diabled using this property:
allow.category.delete.with.children=false
An at-a-glance view of the issues that were closed in this release:
Major Bugs(1)
- Fixed a Hibernate related memory leak associated with
TypeConfiguration
objects that are created when building field metadata.
Minor Bugs(16)
- Added support to show placeholder when images or image-links are corrupted.
- Fixed the issue where
getAntiSamyPolicy
was not picking up policy file location correctly. - Added a sync block to ensure that only one order is created for one customer when creating an order in
createNewCartForCustomer()
method inOrderServiceImpl
. - Validation of the
text
type of Product Options were failing for the empty validation pattern so changed the definition ofvalidationStringExists
inProductOptionValidationServiceImpl
. - Fixed the issue with 'Listgrid' where column titles and data were not aligning correctly.
- Added
addCustomCriteria
to thePersistencePackageRequest
in theAdminProductController
- During Product Duplication, replaced '#' in the URL generation of duplicated product with '_' because some browsers truncates the request URL after the hash.
- During duplication,
Add-on Products
should not copy URL. AddedProductUrlDuplicatorExtensionManager
to correctly handle the URLs of different product types. - During Product Duplication, fixed the name generator to correctly iterate over copy numbers.
- Fixed few issues with the catalog selector for the Product Duplication feature.
- Offer's listgrid was not sorting after adding a filter so added checks for URL parameters and correct parsing in
listGrid-filter.js
andfilterbuilder.js
. - When saving an offer with one invalid rule, it deletes all other rules because client side validation is returning empty rules. Refactored the saving logic to fix the issue in
RuleFieldValidator
. - In some cases, products with SKUs were hitting NPE when viewing the product. Added the check for price as null in
ProductLinkedDataGeneratorImpl
. - Removed deprecated JQuery method
.disableSelection()
fromlistGrid.js
. - In
antisamy-myspace.xml
setformatOutput
to 'false' because the antisamy scan is causing issues with the whitespaces. - Replaced Strings comparator with BigDecimal in
OrderServiceImpl
foraddDependentOrderItem
.
Enhancements(9)
- Deprecated redundant concurrency protection in
CheckoutServiceImpl
- Add more information in the error message when Product Duplication fails validation.
- In the
OrderDaoImpl
, there is a filtering for locale in java in methodreadNamedOrderForCustomer
. Refactored that to move filtering by locale in the SQL query. - Added Maven Enforcer plugin and resolved the dependency issues found by the plugin.
- Removed
@sneakyThrows
in themodifyInitialDuplicateState
method of theProductDuplicateModifier
and made it throwCloneNotSupportedException
- Added a debug logging in the
BroadleafAdminTypedEntityRequestFilter
whenadminUserHasAccess
fails so that actionable data is available. - Added logic to replace invalid chars in file name of a static asset which is mentioned above.
- Added validation to prevent the deletion of a category if there are children categories are present.
- Merged bug fixes and enhancements included in 6.0.17-GA
Total Resolved Issues: 26