DX Release Notes

November 11, 2022
This document is a wrap up of the production patches delivered between DX V7.2.0.3 and DX V7.2.1.0

Underlying content platform

  • Added support for HEAD requests
  • DX module creation Maven archetypes have been moved to Maven Central to ease the creation process
  • Upgraded ICEpdf library to solve issue with thumbnail generation for some PDF files
  • Escape the template name to prevent SQL2 injection in the URL
  • Introduced new ugcEnabled property on RenderContext object, usable from view scripts
  • Support for new CSS
  • More robust handling of exceptional cases in ReferencesHelper
  • Fixed an issue with node auto-split rules which are based on j:nodename property
  • Make the registration of FileInstall configuration more robust in case an existing one is not properly unregistered. Introduced additional thread (timer task) that is checking that current framework startup level has reached the default beginning start
  • Provided extended version of the DTD file for indexing-configuration*.xml that includes DX specific extensions
  • Upgraded to Tomcat 8.0.44, which includes newer version of the Eclipse compiler (JDT). That fixes rule compilation issue.
  • Add synrchonization monitor to module Spring context to avoid issues on fast close/refresh of the context
  • Added support for jsite parameter for Webflow requests
  • Authentication valves are now unregistered when a module is stopped
  • JCR integrity tools: corrected check for currently running operation and stop option
  • Properly shutdown thread executor in clustered implementation to assure Tomcat is shutting down smoothly
  • URLs of static assets of type HTML are now going through the rewriting engine as other links
  • To prevent overloading the server, enforce maxModulesToGenerateInParallel setting everytime a module is not served from cache and release semaphore only when entire request is processed
  • Introduced monitoring of the global request rendering time. The request processing is stopped after 60 seconds (configurable) and it results in a 503 (Service unavailable) error.

Digital Experience Manager

Blog and Wiki

  • Corrected handling of file upload in blog entries and wiki articles


  • Limit the influence of specific cache request parameters (used for preview and debug purpose) on the notCacheableFragment set in the caching filter


  • Prevent unnecessary errors/exceptions when propagating cluster events. Reduced log level to INFO for events, that could be ignored


  • Adjusted techwiki page for LDAP Connector 7.1+: user/group attribute mappings should user "user." or "group." prefix
  • Corrected example of the jahia.properties snippet for configuring ImageMagick service in section "11.1 How-to Install ImageMagick?" of the "Configuration and fine tuning" guide
  • Techwiki: updated user password encryption section to list current DX hashing algorithms used and also provided an example on how to configure own hashing algorithm and let DX use it by default
  • Documented that Linkchecker on WebSphere may require adding certificates into truststore for HTTPS links

Edit mode

  • Improve refresh of a page in edit mode to restore its previous position
  • New page model option to ease the re-use of pages (documentation available under http://academy.jahia.com)
  • Improve circular reference detection in render service
  • Fix selection issue when loading a page
  • Publication Manager fixed to allow a user with start publication permissions to start publication workflow
  • Corrected check for "Paste as reference" button for target content containers, which have restricted types of sub-content
  • Check if the toolbar is not NULL before setting the toolbar data related to "bindable"
  • Automatically refresh left panel in edit mode after creating a menu label
  • Prevent unavailability of edit mode when there is no home page on the default site
  • Corrected the warning message when a page is copying and pasted under itself
  • Do not generate Require-Capability clauses for "assets" module in "default" and for "jquery" and "ckeditor" in assets module, which will avoid refreshing all the modules (due to OSGI wiring) when they are updated.
  • Fixed bad HTML detection in rich text fields, causing improper indexation of HTML code
  • Show missing reference instead of ItemNotFoundException when a content which was referenced is deleted
  • Fix type value validation constraint on content import
  • Display sub-pages under jnt:navMenuText in the publication manager
  • Display sub-pages under jnt:navMenuText in the page picker
  • Corrected handling of lists with content references to missing content
  • Fix rendering overflow in live for circular reference


  • Fixed sorting of facet values when using a label renderer (also for non-category field facets)


  • Log more information on site export
  • Correctly import a site with many files under another site key


  • Made link validation process more robust. Displaying now I18N labels for known statuses.


  • Added new property (j:geocodeAutomatically) to the location aware components, which controls if geocoding should be done automatically or not


  • Fix applier now ignores files that are not valid DX modules

Module deployment

  • Improved refreshes/restart behaviour when multiple modules are being deployed
  • Also remove i18n property of mixin when the mixin itself is removed from a node
  • Template nodes for modules, which were uninstalled when DX is stopped, are now cleaned up correctly on DX startup
  • When loading classes from bundles, check the minimal required bundle state to prevent loading classes from "inactive" bundles. Background job classes can now only be loaded from Active bundles.
  • Avoid race condition during start up of the templates-system module in cluster
  • Remove module nodes of undeployed/deleted modules in default and live
  • Prevent race condition in modules with OSGi services when they are deployed simultaneously (services are using Spring OSGi declarations)
  • Prevent race condition in modules with OSGi services when they are deployed simultaneously (services are using SCR annotations)


  • Service : Restore publication status of content in case of exception
  • Correctly unpublish pages after cut and paste and republish them in new publication process.
  • Add the possibility to unpublish a content content moved in edit mode

Remote publication

  • Add a details view to see all the entries in the journal log
  • Refactoring of event ordering in the journal listener
  • Mixin type change is now correctly replayed
  • Automatically delete related remote publications when deleting a site
  • Correctly handle move of content between sites


  • French analyzer now uses Elision and LowerCaseFilter to improve word stemming (requires re-indexing for better results)
  • Use checks of ACL UUIDs from search index (if available) to optimize the checks QueryResultImpl.isAccessGranted() for XPath queries (DX search)
  • Make search in filename case-insensitive and consider logical operators in freetext search
  • Prevent NPE during "Did you mean" in some cases and/or continue rendering search results page
  • Match types that allow to match by exact property value added to nodeProperty search tag

Server and site settings

  • Fixed german translations in DX and siteSettings modules
  • Listing a no longer existing module in the site's j:installedModules property no longer leads to errors in administration


  • Improved aggregation of the static resources with additional media attribute


  • Fixed URL in JCR browser for thumbnails of a file
  • Prevent access of .raw and .raw.ajax requests without Jahia Tools credentials