Now, users are able to fill out object entries in parts, allowing them to save data as draft and return at their convenience to complete.
Release Notes
Evolving the user experience when object validations fail specifying which information field end-users need to update.
This feature allows admin users to configure whether to send one email with everyone in copy or many emails individually to each email address.
Enabling this feature will allow users to dynamically populate fields using expressions with information created from data filled and provided by other fields.
Traditionally in Liferay, it has been hard to manage features deprecation because customers kept using the old features even if we announced deprecation and eventual replacements.
Now, we are able to better manage deprecation processes with the following changes:
- Features deprecation notice is increased from 6 months to 12 months. It applies to the Intended Functionality, as described in our Support Policy.
- Now, deprecated features might be kept inside a Deprecation Feature Flag during the deprecation period. These feature flags work as follows:
- For upgrades, Deprecation Flags are active by default, therefore customers still see the deprecated feature. No disruption is perceived.
- For new instances created, Deprecation Flag is inactive by default, therefore, the deprecated feature is hidden and it requires activation to be used. It prevents users from unconsciously using a deprecated feature.
Deprecated features are identified in DXP with a new deprecation badge.
When “Manage Users” permission is added to an Account Admin, the Admin can invite, assign and create Users. We separated the “Invite User” permission so it can be used without providing the other permissions to the User.
Before this feature when somebody wanted to activate/deactivate a User they needed to have “Delete” permission. We created two new permissions called “Activate” and “Deactivate”. Users with “Delete” permission still able to activate/deactivate users.
We also created two new Headless-API endpoint:
/headless-admin-user/v1.0/user-accounts/by-status/${status}
Status can be either "active" or "inactive," allowing you to fetch users by their status.
/headless-admin-user/v1.0/user-accounts/by-email-address/${emailAddress}
This endpoint lets you retrieve a user by their email address, regardless of their current status.
This feature addresses the inconvenience of not being able to remove specific entries from user invitation forms, enhancing the user experience for admin users who create these forms. It solves the problem of inefficient form management, allowing users to remove entries without starting over.
The feature enables users to remove entries from the invitation form by clicking a designated removal button, with a confirmation modal to prevent accidental removal.
We extended the Audit Log info on IMPERSONATION actions , ASSIGN/UNASSIGN events involving the role assignment of individual users and ASSIGN/UNASSIGN Role Assignment of Organizations/User Groups/Sites.
We have expanded our Headless Admin User API to include POST, PUT, DELETE, and PATCH endpoints for managing postal addresses associated with user accounts. This development aims to provide more comprehensive functionality and greater flexibility for our users. Additionally, we've made crucial changes to the UserAccount schema and related methods to allow users to manage user status efficiently.
It is now possible to set an expiration on the “set new password” link.
Now users can export the Frontend Client Extensions that have been registered through the UI and import them in other instances. The system will generate a JSON file with all the information needed.
In order to use supported JDK versions, we are upgrading to Gradle 7 to use newer JDK.
The integration of ChatGPT with our Web Content editor is now available OOTB.
The ability to map and trigger standalone Object Actions from the Page Builder is now available OOTB. |
This functionality is now available OOTB. For more information on this feature, please check out the DXP 2023.Q3 Release Notes. |
Now the “Theme SVG Spritemap” frontend client extensions is enabled by default.
Now the “JS Import Maps Entry” frontend client extensions is enabled by default.
Dynamic Data Lists is deprecated and replaced by Objects. DDL has been deprecated as of 7.3, and the Deprecation flag was added to prevent new integrations using DDL (customers that upgrade will still see it).
DDL is planned to be removed in 2024, please migrate your data to Objects before then.
Compatibility with IBM WebSphere application server has been deprecated as of Q4.2023. Please migrate to another application server on the Compatibility Matrix. WebSphere compatibility is expected to be removed at the end of 2024.
Compatibility with Java JDK 8 runtime has been deprecated as of Q4.2023. Java JDK 11 is now the recommended runtime environment. All Java Technical Compatibility Kit (TCK) compliant builds of Java 11 are certified. DXP source compile and runtime compatibility for a higher Java JDK is expected in 2024.
Proxy Objects allows users to manipulate data directly in external systems, such as Salesforce. This feature provides the ability to always interact with live data, avoiding duplicating and conflicts between the systems.
Now, Liferay includes a connector to Salesforce for proxy objects. With it, you can integrate your proxy object with custom Salesforce objects, using Salesforce as an external storage system
New terms available in notification templates related to the current user and entry creator were added, in order to improve the power of dynamically generated templates.
Added terms:
[%CURRENT_USER_ID%]
[%CURRENT_USER_FIRST_NAME%]
[%CURRENT_USER_LAST_NAME%]
[%CURRENT_USER_EMAIL_ADDRESS%]
[%OBJECT_AUTHOR_ID%]
[%OBJECT_AUTHOR_FIRST_NAME%]
[%OBJECT_AUTHOR_LAST_NAME%]
[%OBJECT_AUTHOR_EMAIL_ADDRESS%]
This feature allows power users to configure the intervals to retry to send the email notifications when the first instant attempt fails.
Evolving the power of notification templates, this feature allows users to use variables not only from the object in context, but also from related objects.
This feature allows the user to define a default value for object picklist fields. Default Value can be configured for custom fields from both Custom and System Objects.
This feature allows the user to require that a field's values be unique inside of that column. When this is configured, the system will not let two records have the same value for that field, behaving similarly to a key to that entry.
This feature adds a new field type “Date and Time”. A Datetime
value stores a year, month, day, time, and time zone. With this field, users will also be able to create time ranges, manage priorities and order entries well, and to give more context and assertiveness to the data.
This feature empowers users to create content use cases on top of objects framework, allowing admins to enable localization for objects' entries text fields.
This feature adds read-only support for all object fields types, making sure users are not able to update those fields from both the UI or APIs, only the system can: through default values or actions, for example.
Evolving the extensibility of system objects through objects framework, this feature allows users to create and update System Object entries through Object Actions as they can with Custom Objects.
In order to get in context entry history information, this feature introduced the endpoints to retrieve the object entry log information through the object headless API suite. Allowing users to compose experiences with the specific entry update history.
This feature allows users to delete fields from published objects that were added before the object got published, giving more flexibility to admin users.
This feature allows users to enable the basic encryption support for object fields.
This feature shows the Organization application as a System Object in Objects Admin, allowing users to extend it and related with other objects available.
OTB workflow that will split a mixed basket of goods a customer places from different suppliers, into individual supplier orders to support marketplaces and webshops where partners are also present.
Used in Conjunction with Supplier Accounts, this object's rule, once configured, splits Commerce Orders automatically by the Catalog that each Product belongs to. The Channel on the Order is updated to be the channel linked to the same supplier that the Catalog is linked to. The order splitting rule effectively allows the supplier to manage orders for their own specific products.
OTB Support for Customers to request quotes for catalog products or baskets and to restrict pricing to be only available on request:
- Enable Product Catalog managers to initiate contact with a Sales Agent to process a quote.
- Allow customers to request a quote for a catalog product.
- Submitted Quote requests will be assigned to the sales agents to review and process.
- Allow clients to request a quote for individual products instead of setting a price.
- Includes the option to use a Price List or a Promotion to price the Product as "Price on Application".
- There is also the ability to activate the "Request a quote" option on a fully priced cart for a particular channel.
Make it easier for suppliers to manage products and orders with an OTB account type supplier, and a Generic Supplier role, that grants them the ability to manage their own product catalog(s) and channel. With this, they will have the ability to create product bundles with SKUs from Supplier Catalogs.
New Account Type of Supplier. A Supplier can be linked to a catalog and to a channel to allow the supplier to manage their own products, price lists, promotions, catalogs, discounts, inventory and channel in order to be able to fulfill orders for their own products.
We have enabled the integration with ChatGPT so texts can be generated from the Web Content editor.
There is a new button on the CKEditor (web content editor) that triggers a modal where users can write a prompt (instructions for the bot) and add additional parameters such as tone and length.
In order to make it easier for users to configure certain accessibility properties to their liking or needs, we have created our Accessibility Menu.
The Accessibility Menu allows each user to customize certain accessibility settings in a specific way, so that DXP has a custom accessibility setup based on the needs of that user. It can be accessed via keyboard navigation using Tabulation, right after the “Skip to Content” option.