Uploaded image for project: 'PUBLIC - Liferay Portal Enterprise Edition'
  1. PUBLIC - Liferay Portal Enterprise Edition
  2. LPE-1524

Property values changes when multiple plugin hooks modify portal.properties

Details

    Description

      When there are multiple plugin hooks that override portal.properties, the value of a property may change if the same set of hooks are deployed to a different server or even if the server is just restarted. The last hook that sets the property is the final value of the property. Since the order that hooks are loaded is not guaranteed, the value of the property could change. For example, suppose you have test1-hook that sets
      layout.static.portlets.all=58
      and test2-hook that sets
      layout.static.portlets.all=3
      The value of layout.static.portlets.all could be 58 or 3. For properties that can only take one value, system administrators must be carefully of the hooks they deploy. However, for properties that can take multiple values, the values are now merged. So, in the example, the value of layout.static.portlets.all will now be "1_WAR_chatportlet,58,3" (1_WAR_chatportlet is the default value of layout.static.portlets.all). The ordering of the three values are still not guaranteed, however, the values will be merged. This new behavior makes it much easier for multiple hooks that will work well with other hooks.

      Properties that can be overridden from a plugin hook, accepts multiple value, and will be merged with the hooks values are:
      auto.deploy.listeners, application.startup.events, auth.failure, auth.max.failures, auth.pipeline.post, auth.pipeline.pre, auto.login.hooks, hot.deploy.listeners, layout.static.portlets.all, login.events.post, login.events.pre, logout.events.post, logout.events.pre, servlet.session.create.events, servlet.session.destroy.events, servlet.service.events.post, servlet.service.events.pre, session.phishing.protected.attributes, value.object.listener.*

      UPGRADE NOTE:

      If you are currently overriding any property in portal.properties that accepts a comma separated set of values with a plugin hook, please note that the value of the property will now be merged with the original value in portal.property. If you need to completely remove the original value from the property, please use a portal-ext.properties files to first remove the original value.

      Attachments

        Issue Links

          Activity

            People

              michael.saechang Michael Saechang
              brian.chan Brian Chan
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Packages

                  Version Package
                  5.1 EE SP5 (5.1.8)
                  5.2 EE SP3 (5.2.7)