In eXo Platform, almost all configurations are performed in a folder that is controlled by a system property named
exo.conf.dir.
This property is set by setenv.*
scripts (Tomcat) or
standalone-exo-*.xml
files (JBoss).
The default value of exo.conf.dir is:
$PLATFORM_TOMCAT_HOME/gatein/conf
(in Tomcat).
$PLATFORM_JBOSS_HOME/standalone/configuration/gatein
(in JBoss).
That folder contains the following files:
configuration.properties
: The main system configuration.
configuration.xml
: The default portal container configuration.
portal/${PORTAL_NAME}/configuration.xml
:
The extra configuration for ${PORTAL_NAME} portal container if any.
The xml configuration is mainly done during the development phase, whereas the configuration in
configuration.properties
targets the deployment phase.
So typical configurations should be done in the configuration.properties
file.
To understand more clearly the role of those files, let's begin with portal container concept.
The eXo Platform Kernel collects runtime components in the portal containers. A portal container holds all components to run a portal instance. It serves pages under the servlet context for its name.
The default portal container in eXo Platform is 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.
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:
portal/${PORTAL_NAME}
(under exo.conf.dir),
where ${PORTAL_NAME} is the name of the portal container.
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.
The system configuration is mostly done in the configuration.properties
file.
The format of each line in this file is simple: property_name=property_value. In this document if you are told to disable/deactivate/comment out a property, just put a # character in the left-most of the line.
This file contains the built-in configuration for the "portal" portal container.
In most cases, you should not change this file.
In case you do not want to use "portal" as the default portal for your project, this file can be used to import another PortalContainerDefinition into the root container.
To learn more about how to configure a new portal container, please refer to eXo Kernel.
portal/portal/configuration.xml
This is where further customizations (for "portal" portal container) 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
.
See also