Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-17673

Define a runtime component to hold nuxeo.conf properties for UI

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.4
    • Component/s: Seam / JSF UI
    • Tags:
    • Impact type:
      Configuration Change
    • Upgrade notes:
      Hide

      Some nuxeo.jsf* configuration parameters can now be contributed through runtime extension points, instead of just being filled in nuxeo.conf properties

      Show
      Some nuxeo.jsf* configuration parameters can now be contributed through runtime extension points, instead of just being filled in nuxeo.conf properties
    • Sprint:
      nxNag Sprint 7.4.2
    • Story Points:
      3

      Description

      Some nuxeo.conf properties are more application configurations than instance configurations (for dev and prod environments, for instance).

      It would make more sense to use a specific runtime component to hold these confs (still defaulting to Framework.getProperty for compat or if useful) and document them, than pile up parameters on nuxeo.conf or nuxeo.properties and document them on https://doc.nuxeo.com/x/QQA7

      But note that params that are needed at startup, to be placed in faces-config.xml and such cannot be handled as is, as runtime is not started yet.

      => Define a new component to place in ui-web to hold confs for:

      • nuxeo.jsf.enableDoubleClickShield
      • nuxeo.jsf.useAjaxTabs
      • nuxeo.jsf.listWidget.compatEnabled (list widget comp)
      • nuxeo.jsf.removeAliasOptim (alias comp)
      • new param for NXP-16827

      Stays in nuxeo.conf (unchanged):

      • nuxeo.jsf. numberOfConversationsInSession
      • nuxeo.jsf.numberOfViewsInSession
      • nuxeo.jsf.numberOfLogicalViews
      • nuxeo.jsf.tmp.dir
      • nuxeo.jsf.maxFileSize
      • nuxeo.jsf.maxRequestSize
      • nuxeo.jsf.fileSizeThreshold
      • javax.faces.FACELETS_REFRESH_PERIOD (to document)
      • javax.faces.PROJECT_STAGE (to document)

      Target configuration for service declaration (note that this documentation should be linked from the UI documentation pages on doc.nuxeo.com, so would be nice to fill doc like at https://github.com/nuxeo/nuxeo/commit/2dce43b4695705c4558bc33f29329ba7453f30a1)

      <component name="org.nuxeo.ecm.platform.ui.web.configuration">
      
        <implementation
          class="org.nuxeo.ecm.platform.ui.JSFConfigurationServiceImpl" />
      
        <service>
          <provide
            interface="org.nuxeo.ecm.platform.ui.JSFConfigurationService" />
        </service>
      
        <extension-point name="configuration">
          <object
            class="org.nuxeo.ecm.platform.ui.JSFConfigurationDescriptor" />
        </extension-point>
      
      </component>
      

      Default contribution:

      <component name="org.nuxeo.ecm.platform.ui.web.configuration.default">
      
        <extension target="org.nuxeo.ecm.platform.ui.web.configuration"
          point="configuration">
      
          <configuration>
            <property name="nuxeo.jsf.enableDoubleClickShield">${nuxeo.jsf.enableDoubleClickShield:=true}</property>
      ...
          </configuration>
      
        </extension>
      
      </component>
      

      => by default, defaut value should be retrieved, unless specified otherwise in nuxeo.conf
      => otherwise, new override config should be taken into account

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: