There have been a significant number of changes to Liferay DXP’s configuration process, and one of the most significant changes has been the migration of configuration settings away from the standard portal-ext.properties file into individual configuration sets managed within OSGi modules. In most cases, the functionality that was present in Liferay Portal is also available in DXP (often in an increased capacity!); however, the configuration process has changed. This article will focus on commonly-used items that have been removed from the portal-ext.properties file, noting which settings have been deprecated entirely and which are available in OSGi.
Important Note: This article is not intended to be an exhaustive list of properties available in portal-ext; nor is it a complete list of changes in portal-ext.properties from Liferay Portal 6.2 to Liferay DXP. It is only a list of some commonly-used properties that are no longer available in the portal-ext.properties file.
Configuration That Has Moved in Liferay DXP
For the most part, all settings related to authentication and authorization have been moved into the relevant OSGi module for the settings in question. This includes the following authentication options:
Settings for each of these modules is now available through the Liferay Control Panel, under the Configuration > System Settings section.
All modules related to authentication and authorization can be found in the Foundation category (as displayed below), or they can be searched for individually.
Template Engine Settings
As above, the settings that govern the behavior of both the Freemarker and Velocity template engines used within Liferay have also been moved from the portal-ext.properties file over into OSGi. The main use case for modifying these settings in the past has been to grant the template engines the ability to access the serviceLocator variable.
The settings that control both template engines are located in the Foundation category in DXP’s System Settings.
Settings for many of Liferay’s built-in portlets have been removed from portal-ext, as these applications have been converted to OSGi bundles in DXP. This includes the following portlets:
- Asset Publisher Portlet
- Bookmarks Portlet
- Breadcrumb Portlet
- Dockbar Portlet
- Dynamic Data Lists Portlet
- Dynamic Data Mapping Portlet
- Flags Portlet
- Invitation Portlet
- Journal Portlet
- Journal Articles Portlet
- Journal Content Portlet
- Journal Content Search Portlet
- Navigation Portlet
- Nested Portlets Portlet
- Site Map
- Software Catalog
- Tags Compiler
In most cases, the settings can now be found in the System Settings section in the Control panel. As in the screenshot below, it is easiest to search for the specific application or service that you wish to configure; in this case, we’re looking for the Bookmarks service.
Note that some of these applications are no longer present at all in Liferay DXP; two examples of applications which have been eliminated are the Dockbar and Invitations portlets. In most cases, the functionality provided by the deprecated applications has been superseded by DXP; for example, in the case of the Dockbar portlet, the dockbar is no longer a part of the DXP UI.
Other major commonly-used configuration sets that have been migrated into the OSGi System Settings include the following:
- Google Apps integration settings
- Java Content Repository (JCR) settings
- Monitoring settings
Configuration Settings Which Are No Longer Available in Liferay DXP
The in-process search engine that was used to handle search indexing and querying in Liferay Portal has been replaced with a third-party search engine named Elasticsearch; one of the results of this is that all of the configuration parameters geared towards tuning the Lucene engine are now no longer available at all. This included properties intended to control where and how the search indexes were stored, things like the batch size for flushing search indexing requests to the datastore, and search index clustering; all of this type of behavior in DXP is managed within the Elasticsearch container rather than in DXP.
Vaadin is not really a template engine, but it bears mentioning in this section. As of Liferay DXP, Vaadin is no longer shipping with the Liferay DXP platform OOTB. However, it can be installed as a set of OSGi modules; again, this will mean that Vaadin configuration will be done through the modules rather than through portal-ext.
Parallel Layout Rendering
One of the performance optimizations that was present in Liferay Portal 6.x was the ability to instruct the portal engine to render multiple layouts for a single page in parallel. This feature was toggled by setting the
layout.parallel.render.enable property in portal-ext.properties to
true; this is no longer a valid configuration option in Liferay DXP.
In general, the path that Liferay DXP is taking when it comes to configuration is to move towards OSGi-based configuration management and storage; when it comes down to it, this is definitely an improvement over storing config settings on the filesystem on each individual server. However, it does mean that some care must be taken when migrating existing Liferay environments to DXP; simply copying over your existing portal-ext.properties and hoping for the best will not result in a positive outcome.
If you have questions on how you can best and / or need help with your Liferay DXP implementation, please engage with us via comments on this blog post, or reach out to us at https://www.xtivia.com/contact/ or firstname.lastname@example.org.
You can also continue to explore Liferay DXP by checking out The Top 10 New Features in Liferay DXP 7 from a functional perspective, or Top 5 New Features in Liferay DXP UI Development and Creating JAX-RS REST Services in Liferay DXP from a development perspective, or Top 5 DevOps Features in Liferay DXP from a devops perspective.