Liferay is a Gartner Magic Quadrant Leader for the Sixth Year! Find out why
The Proposals Wiki has been deprecated in favor of creating Feature Requests in JIRA. If you wish to propose a new idea for a feature, visit the Community Ideas Dashboard and read the Feature Requests Wiki page for more information about submitting your proposal.
« Back to 2012 Google...

Reverting Control Panel Configuration

Project Title #

Reverting Control Panel Configuration

Background #

Administrators have many options and places in which to configure the behavior of Liferay Portal. Administrators can:

  • Create customized portal-ext.properties files, containing overriding configuration options, and place them on the classpath or in the $LIFERAY_HOME directory.
  • Make configuration changes through the GUI (Control Panel)
  • Include configuration from other sources using special include directives
  • Make dynamic configuration through custom code and APIs.

The precedence order of configuration changes are (in order of declining precedence):

  • Configuration stored in the PortletPreferences database table
  • Configuration read at startup time e.g. from portal-ext.properties
  • Default configuration in the embedded portal.properties file
  • Hard-coded, compiled-in defaults

Use Cases #

  • An administrator wants to configure Liferay to bind to their existing corporate LDAP, or Active Directory directory.
  • An administrator wants to configure Liferay to use a custom SSO implementation
  • An administrator wants to turn debug flags on or off for various reasons.

The Problem #

In many scenarios, the administrator doesn't quite know the correct values for configuration. The easiest way to iteratively determine the right values are to use the GUI, make a change, test, and repeat. Unfortunately, when dealing with infrastructural changes like LDAP and SSO configuration, the wrong value can render the portal unusable, as the administrator can no longer log in to change the bad value. Compounding this is the fact that changes made in the GUI are immediately persisted into the database, such that stopping and restarting the server does not reset the value, even if corrected in any external configuration file like portal-ext.properties.

The only recourse is to open a database table editor, find the incorrect value(s), and reset them manually, and re-start the server.

The Solution #

For this project, an easy to use "reset" mechanism is needed to allow the administrator to recover from the invalid configuration. Some sort of checkpoint or timeout mechanism (where any configuration changes are automatically reverted after a set period of time unless confirmed) is needed.

Skills Needed #

  • Required: Java, JSP
  • Nice to have: Struts, AlloyUI, Liferay

Prerequisites #

None.

Deliverables #

  • Complete code changes to Liferay Portal 6.0.6 to allow administrators to recover from configuration errors
  • Unit tests for all new and changed code.
  • Documentation required to configure this option..

References #

Related Issues #

LPS-15311

External References #

0 Attachments
12940 Views
Average (1 Vote)
The average rating is 5.0 stars out of 5.
Comments