Broadleaf 4.0.2-GA
Released on July 31, 2015
Notice: This release contains an admin issue that prevents the association of a primary media asset when creating a new product. We recommend skipping this release and instead upgrading to 4.0.3-GA. All fixes/enhancements outlined below are still revelant and are also part of the 4.0.3-GA release.
This is the 2nd patch release for the Broadleaf Commerce 4.0 framework. While this is a patch, there were several small enhancements made with this release.
Noteworthy Updates
Modals in the admin no longer close when losing focus
An enhancement has been made to the admin modal to prevent it from closing when clicking outside the modal focus. The previous behavior could at times cause loss of data entered in form fields if the modal was accidently closed by clicking outside the focus of the modal.
Proper merging of multiple XML metadata overrides
If Admin presentation properties are overriden by different xml configuration files on the same base entity they are now merged correctly. Previous behavior took the properties from the last XML file override as the final merged version of the entity.
For example:
First override from within a module
<mo:override id="blMetadataOverrides">
<!-- Overriding _Product_ to exclude the quanityAvailable -->
<mo:overrideItem ceilingEntity="org.broadleafcommerce.core.catalog.domain.Product">
<mo:field name="defaultSku.quantityAvailable">
<mo:property name="excluded" value="true" />
</mo:field>
</mo:overrideItem>
<mo:override>
Then add an additional override from the core app
<mo:override id="blMetadataOverrides">
<!-- Another _Product_ override -->
<mo:overrideItem ceilingEntity="org.broadleafcommerce.core.catalog.domain.Product">
<mo:field name="displayTemplate">
<mo:property name="excluded" value="true" />
</mo:field>
</mo:overrideItem>
</mo:override>
Final merge brings both XML file overrides together
<mo:override id="blMetadataOverrides">
<mo:overrideItem
<!-- final _Product_ merge of all XML overridden fields -->
ceilingEntity="org.broadleafcommerce.core.catalog.domain.Product">
<mo:field name="defaultSku.quantityAvailable">
<mo:property name="excluded" value="true" />
</mo:field>
<mo:field name="displayTemplate">
<mo:property name="excluded" value="true" />
</mo:field>
</mo:overrideItem>
</mo:override>
An at-a-glance view of the issues that were closed in this release
Major Bugs(2)
- UpdateExecutor can create a parameterized query with an IN clause that has no params, causing a SQLException
- 500 Error in Admin when entity not found
Minor Bugs(3)
- If an exception was thrown in a workflow rollback handler, it is not possible to see what the exception was
- Overlapping metadata overrides by entity now allowed
- Better handling of order field in FilterMapping
Enhancements(13)
- Prevent loss of modal form data by way of errant clicks
- Include placeholder template to add a link from the admin login page
- Add property to not return the default value for a translated field if that value is not in the same language.
- Creates a DirectCopyTransformer version that conditionally executes based on a Spring property
- Create a DirectCopyClassTransformer that can use a Spring property to decide whether it should execute
- Add accessor on RequestDTO implementation to the additional properties from BroadleafRequestContext
- Add a FieldData object to indicate that validation should be skipped
- Add extension functionality to modify the URL paths for a StaticAsset
- Make the
requiredFlag
field visible by default in admin application. - Incorporate an "order" member to FilterAndSortCriteria, FilterMapping, use it for sorting
- Add pricelist-related capabilities to the Search Facet Range grid
- There is no way to clear out a primary image for a product
- Using mo:override does not merge configurations with the same ceiling entities
Total Resolved Issues for: 18