From now on, most JavaScript files in Liferay DXP have hashed file names generated at build time. For example, a main.js file may appear at runtime with a randomly generated hash value in its name, such as This hash value represents a unique version of the file, so the browser can identify that the file’s contents have not changed. This allows the file to remain in the browser cache indefinitely when the infinite caching strategy is selected. In addition, the frontend caching infrastructure now supports both infinite caching and time/validation-based caching strategies. These strategies can be configured through Instance Settings. For those JavaScript files that cannot be hashed because they are generated at runtime by the server depending on some parameters, a new configuration is available in DXP to define their TTL and the option to add the Also, hashed files have a fallback strategy based on TTL + eTag if they are requested using their canonical name. This acts as a fallback for import map errors or legacy portlets that are not aware of hashed file names. Key Benefits:
The new Liferay DXP caching strategy for JavaScript files improves performance and stability. 1. Faster Page Loads: 2. Elimination of Stale Resources: 3. Reduced Origin Server Load: 4. Cache busting: |
Release Notes
This change promotes the Save Data Set view state to be recoverable when navigating back to it epic from Beta to General Availability, confirming the feature is stable and fully supported.
We are evolving how content is managed. To align with our new Promote Content standards, the legacy Propagation feature for Site Templates is being retired. In its place, we are building a new solution that prioritizes data integrity by allowing for targeted overwriting of existing information. This change ensures your site updates are more predictable and efficient.
This change promotes the CK Editor 5 epic from Beta to Release.
"Promote Content among Environments" is a Liferay initiative that takes content promotion to the next level. By implementing a significant infrastructure change (based on Headless Batch APIs), processes are substantially streamlined, optimizing existing processes and adding new ones that enable more secure, stable, and efficient content promotion. Now you can promote elements at the instance level, such as Object Definitions, Picklists, or Roles, and freely export and import Object Entries with any scope. With the new Lazy References infrastructure based on External Reference Codes, relationships are maintained and updated regardless of the order of importation. Furthermore, the new Report List provides a comprehensive and detailed record of everything that happened during the import process. This new report is essential for new entities because import processes will run from start to finish without stopping with the first issue, reporting all errors so you can resolve them collectively instead of having to address them individually with each run. For non migrated entities, the behavior will be the current one finishing the process with the first error. Key Benefits:
|
This set of epics aim to complete and strengthen the content page promotion and management system. We have developed necessary endpoints for various page types and implemented a comprehensive catalog of page elements and fragments. Additionally, we enhanced the data architecture through the integration of scopes and secure references. Together, these efforts ensure content integrity during import, export, and staging. The resul is a more stable page editor that handles lazy references and provides a seamless experience across all site components.
Key Benefits:
Comprehensive Site Coverage: By enabling promotion for all page types, organizations can ensure their entire digital presence is synchronized across environments without manual gaps.
Enhanced System Resilience: The implementation of scope-aware identifiers and error-detection spikes prevents broken user experiences caused by missing references or deleted assets during content staging.
We’ve introduced the Multiselector Dropdown Fragment to make managing large amounts of data effortless for users. Instead of scrolling through a long list of checkboxes, It keeps your design clean while allowing users to easily find what they need, manage their choices as removable tags, or clear all selections with a single click—all configurable directly within the page editor.
Key Benefits:
Instead of overwhelming your page with a long, messy list of checkboxes, this fragment tucks all your options into a single, sleek input field. This saves valuable screen space and keeps your design looking professional, even when dealing with dozens or hundreds of choices.
Users no longer have to scroll and hunt for the right option. With built-in filtering, they can simply start typing to find exactly what they need instantly. Selected items are neatly organized as tags, making it easy for users to review or change their choices with a single click.
We’ve added more flexibility to how you build forms by letting you choose the best interface for every field. You can now switch between different visual styles within the same fragment type—for example, displaying a list of options as a multi-selector checkbox for easy scanning or a multi-selector dropdown to save space. This allows you to customize the user experience to fit your layout perfectly with just one click.
Key Benefits:
Enhanced UX Personalization: Designers can select the most intuitive input method for their audience, such as a drag-and-drop zone for files versus a standard button, without changing the backend data structure.
Streamlined Design Consistency: By offering multiple visual interpretations of the same object fields, the platform allows for diverse form layouts that still maintain strict data integrity and mapping standards.