JBoss.orgCommunity Documentation

eXo Platform configuration

In eXo Platform, the configuration is performed in a folder whose location is controlled by a system property named exo.conf.dir. By default, the gatein.sh startup script sets this property as follows:

-Dexo.conf.dir.name=gatein/conf

So the main entry point for the eXo Platform configuration is /gatein/conf/. This directory contains the following files:

This section explains some parts of the eXo Platform internals so that you can understand the roles of these configuration files.

The eXo Platform Kernel collects runtime components in the portal containers. A portal container holds all components to run a portal instance. It serves portal pages under the servlet context for its name.

The default portal container in eXo Platform is simply called "portal". This explains why the default URL of the samples is http://localhost:8080/portal.

The default portal container can be configured directly inside exo.conf.dir.

However, eXo Platform is capable of running several portal instances simultaneously on the same server. Each instance can be configured and customized independently via files located at: /gatein/conf/portal/$PORTAL_NAME, where $PORTAL_NAME is the name of the portal container.

Note

The name of the configuration file can be altered. Please refer to the PortalContainer section in the Kernel reference for more details on portal containers and other options to modify the location of the properties.

Services that run inside a portal container are declared via the xml configuration files like configuration.xml. Such files exist in jars, wars and below exo.conf.dir.

The .xml configuration files also serve as the main way to customize the portal via the multiple plugins offered by the eXo Platform components.

Additionally, the .xml files may contain variables that are populated via properties defined in configuration.properties. Hence, the configuration.properties file serves as exposing some selected variables that are necessary to configure eXo Platform in a server environment.

configuration.properties

The system configuration is mostly done in the configuration.properties file. In most cases, this should be the only file for the system administrator to configure.

configuration.xml

This file contains the built-in configuration for the "portal" portal container.

Note

To learn more about how to configure a new portal container, please refer to the Kernel reference guide.

portal/portal/configuration.xml

This file is empty by default. This is where further customizations can be placed. Generally, custom configurations are provided by extension wars. However, this file is the last loaded by the kernel. It has a higher priority over any other configuration files, including extensions. So, you can override any internal component configuration.

This may turn handy services or configurations that are not exposed in configuration.properties.

For example, you can change the default WebDAV update policy by adding the following code to this configuration.xml file:



  <component>
    <key>org.exoplatform.services.jcr.webdav.WebDavServiceImpl</key>
    <type>org.exoplatform.services.jcr.webdav.WebDavServiceImpl</type>
    <init-params>
      <value-param>
        <name>auto-mix-lockable</name>
        <value>false</value>
      </value-param>
      <value-param>
        <name>def-folder-node-type</name>
        <value>nt:folder</value>
      </value-param>
      <value-param>
        <name>def-file-node-type</name>
        <value>nt:file</value>
      </value-param>
      <value-param>
        <name>def-file-mimetype</name>
        <value>text/plain</value>
      </value-param>
      <value-param>
        <name>update-policy</name>
        <value>replace</value>
      </value-param>
    </init-params>
  </component>