This functionality is now available OOTB. For more information on this feature, please check out the DXP 2023.Q3 Release Notes. |
Release Notes
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.
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.
This feature allows users to delete fields from published objects that were added before the object got published, giving more flexibility to admin users.
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.
A new application, named Data Set Manager (Data Sets in the Control Panel) allows admins to define through a UI data set views for the different headless resources available. Admins will be able to choose the data source, as well as configure the columns to be available and the pagination options for the different views.
To enable this feature:
- Add feature.flag.LPS-167253=true to your
portal-ext.properties - Go to Instance settings > Feature Flags and enable “Data set manager” in the Beta tab.
In addition to the data set manager, two additional components have been added to provide the full value to the users:
- A new fragment, so these views can be integrated in any content page. Content managers will select the data set view to display on each fragment.
- A new frontend client extension, Frontend Data Set Cell Renderer, that allows developers to customize how any field of the data set view is rendered, providing total control of the look and feel of any column.
Improves the overall usability of the application and also the ability to reorder and add items. Also improve the accessibility of functionality:
- Now it is possible to move the items in a navigation menu using the keyboard.
- There is more flexibility when adding items to the navigation menu since you can now select the place where you want to add them to.
Now, when creating pages and display pages to visualize object entries, users can easily display related object entries. To enable this, we have added:
- In a one-to-many or many-to-many object relationships scenario, new related item collection providers access information of the “many” side of a one-to-many and many-to-many relationships. For example: a Countries object, and a related “cities” object for cities in those countries. This new capability allows users to easily list the cities that belong to a country, and other data from each city, via a related item collection provider.
- In a one-to-many object relationship, if we are listing or displaying the items of the “many” side, information of the “one” side is available for direct mapping as well. For example: a “Countries” object, and a related object for cities in those countries. When listing the cities, this new capability allows to easily display the country which each city belongs to.
- Attachment field attributes (such as download URL and file size) are now available for direct mapping.
Improved navigation through the different tabs and pages in Knowledge Base in the manage toolbar, sidebar search, sidebar primary button, priority and general interactions.
Table View is displayed in the Knowledge Base.
Publications can take up quite a bit of space in the database. While some users need an extensive history, others do not.
With this new feature we can provide an optional clean up to remove older publications for those who do not need the history.
Users can preview the changes of a wiki page within a publication.
We have refactored Ongoing, Scheduled and History tabs to use dataset display, and added a configuration to speed up review changes screen.
Operating Liferay (on-prem!) with Elasticsearch 8 as a search engine leveraging its REST API compatibility mode through the bundled Elasticsearch 7 connector allowing Liferay deployments to upgrade the Elastic Stack to 8.x (opt-in), while also keeping compatibility with 7.x.
General Upgrade Instructions:
Please refer to the documentation for more details.
- No action is required for deployments already using and insisting to stay on Elasticsearch
7. - Moving to Elasticsearch
8may require a full reindex depending on the choice of the upgrade path:- Upgrading the current Elasticsearch
7.xcluster to8.xand connect DXP (Upgrade Elasticsearch | Elasticsearch Guide [8.10] | Elastic , recommended) → No reindex required - Setting-up a new Elasticsearch
8.xcluster, connect DXP → Reindex required!
- Upgrading the current Elasticsearch
This is not a new connector, but enhancements to the existing bundled Elasticsearch 7 connector and other Elasticsearch-only features (like Commerce, Workflow Metrics or Search Tuning) leveraging the REST API compatibility mode of Elasticsearch 8 servers.
Liferay Portal 7.4 CE GA78 and Liferay DXP 7.4 Update 78 Tomcat Bundles and Docker Images come with Elasticsearch 7.17.10 for Sidecar.
This new frontend client extension allows users to replace the existing theme spritemap without the need to redeploy a theme. The spritemap should include all icons needed for the scope where it is used.
The Control Panel still uses the admin spritemap.
After registering the client extension, in the page template or page you need to use it, configure it from the design options menu:
To enable this client extension, do it from the Feature Flags management UI:
This feature allows developers to create or update an object and its related elements in a single request, optimizing the requests performed to the server, thus improving the overall performance of your solution.
Provided the necessary data for the related elements (ExternalReferenceCode, Id, etc), if the element already exists, it will relate the two objects, if the related element does not exist, it will create the object and it will relate them.
It is also possible to remove related elements by just updating the parent without the elements that are not related anymore.
Now, developers will be able to filter Custom Object Entries using the field values of the related elements for a given Object entry.
It is possible to filter as many levels as needed. The format of the filter query needs to be: relationshipName1[/relationshipName(i)]*/fieldNameN. Being relationshipName1, relationshipName(i), etc the different relationship names that join Object 1 with Object i, and fieldNameN being the name of the field of the latest Object definition on which the user wants to filter.
In addition to this, our nesting capabilities have been enhanced, so now it is possible to retrieve data for an Object entry and its related elements, supporting several levels of nesting.
The names of the different relationships to retrieve need to be specified in the nestedFields parameter, separated by commas. Additionally, the nestedFieldsDepth parameter with the number of levels to retrieve needs to be specified in order to indicate to Liferay how many levels it is necessary to nest.