You are looking at documentation for an older release. Not what you want? See the current release documentation.
This page is a reference to configurations exposed via exo.properties
.
This is not an exhaustive list. Some properties are not documented in this chapter, because they are extremely rarely used by administrators. If the property you are searching for is not here, search it in the whole documentation and raise a question in Community Forum, if necessary.
Name | Description | Default |
---|---|---|
Platform | ||
exo.base.url | Generates links. | http://localhost:8080 |
exo.accountsetup.skip | Skips "account setup" screen or not? | false |
exo.super.user | The predefined super user's name. | root |
exo.portal.resetpassword.expiretime | The expiration time of a reset password link. | 24 (hours) |
SMTP | ||
exo.email.smtp.from | The "From" field in outgoing emails. | noreply@exoplatform.com |
exo.email.smtp.host | The external mail server. | localhost |
exo.email.smtp.port | The external mail server port. | 25 |
exo.email.smtp.starttls.enable | Enable TLS or not? | false |
exo.email.smtp.auth | Enable SMTP authentication or not? | false |
exo.email.smtp.username | Username to get authenticated with the mail server. | |
exo.email.smtp.password | Password to get authenticated with the mail server. | |
exo.email.smtp.socketFactory.port | Port to connect to if a socket factory is specified. | |
exo.email.smtp.socketFactory.class | A class to create SMTP sockets. | |
JODConverter | ||
exo.jodconverter.enable | Enable JODConverter or not? | true |
exo.jodconverter.portnumbers | List of ports used to create soffice processes. | 2002 |
exo.jodconverter.officehome | The home folder of the Office installation. | Blank (auto-detected) |
exo.jodconverter.taskqueuetimeout | The maximum living time in milliseconds of a task in the conversation queue. | 30000 |
exo.jodconverter.taskexecutiontimeout | The maximum time in milliseconds to process a task. | 120000 |
exo.jodconverter.maxtasksperprocess | The maximum number of tasks to process by an office server. | 200 |
exo.jodconverter.retrytimeout | The interval time in milliseconds to try to restart an office server in case it unexpectedly stops. | 120000 |
Search connector | ||
exo.[searchConnectorName].connector.[informationType].enable | Turn on/off a specific Search connector for a certain information type. | true |
Unified Search | ||
exo.unified-search.engine.fuzzy.enable | Enable fuzzy search or not? | true |
exo.unified-search.engine.fuzzy.similarity | A float number between 0 and 1 expressing how much a returned word matches the keyword. 1 is exact search. | 0.5 |
exo.unified-search.excluded-characters | List of characters that will not be indexed (so could not be searched). | .- |
Notification | ||
exo.notification.NotificationDailyJob.expression | Cron expression to schedule daily emails. | 0 0 23 ? * * (11:00pm every day) |
exo.notification.NotificationWeeklyJob.expression | Cron expression to schedule weekly emails. | 0 0 11 ? * SUN (11:00am every Sunday) |
exo.notification.service.QueueMessage.period | The delay time (in seconds) between two batches of sent mails. | 60 |
exo.notification.service.QueueMessage.numberOfMailPerBatch | The maximum number of emails sent each batch. | 30 |
exo.notification.portalname | The "from" field in notification emails. | eXo |
exo.notification.maxitems | Maximum number of notifications displayed in the popup list. | 8 |
exo.notification.viewall | Living days of items displayed in the View All page. | 30 |
exo.notification.WebNotificationCleanJob.expression | Cron expression to schedule the job that cleans web notification old items. | 0 0 23 ? * * (11:00pm every day) |
JCR | ||
exo.jcr.datasource.dialect | In most cases the dialect is auto-detected. Follow the link to know exceptions. | auto |
exo.jcr.storage.enabled | Enable file system storage for JCR values? | true |
WebDav | ||
exo.webdav.def-folder-node-type | Matching node type of folders. | nt:folder |
exo.webdav.def-file-node-type | Matching node type of files. | nt:file |
exo.webdav.def-file-mimetype | The mimetype to exchange file data. | application/octet-stream |
exo.webdav.update-policy | The policy applied when there is an update via WebDav. | create-version |
exo.webdav.folder-icon-path | The display icon of a folder. | /eXoWCMResources/skin/images/file/nt-folder.png |
exo.webdav.cache-control | The cache-control header that defines cache and cache live time. | text/*:max-age=3600;image/*:max-age=1800;application/*:max-age=1800;*/*:no-cache |
ECMS | ||
exo.ecms.connector.drives.uploadLimit | Maximum size (in MB) allowed of an uploaded file. | 200 |
exo.portal.uploadhandler.public-restriction | Turn on/off public access to the upload service. | true |
exo.ecms.connector.drives.clientLimit | The maximum number of concurrent uploaded files in client side. | 3 |
exo.ecms.connector.drives.serverLimit | The maximum number of concurrent uploaded files in server side. | 20 |
exo.ecms.search.excluded-mimetypes | Content of these mimetypes will not be searched. | text/css,text/javascript,application/x-javascript,text/ecmascript |
exo.ecms.search.enableFuzzySearch | Enable fuzzy search or not? | true |
exo.ecms.search.fuzzySearchIndex | A float number between 0 and 1 expressing how much a returned word matches the keyword. 1 is exact search. | 0.8 |
exo.ecms.lock.admin | Users or groups who can manage locks. | *:/platform/administrators |
exo.ecms.friendly.enabled | Enable friendly URL maker or not? | true |
exo.ecms.friendly.servletName | The friendly name used when making friendly URLs. | content |
ECMS Watch Document | ||
exo.ecms.watchdocument.sender | The "from" field in the notification emails. | support@exoplatform.com |
exo.ecms.watchdocument.subject | The subject of the notification emails. | "Your watching document is changed" |
exo.ecms.watchdocument.mimetype | Mimetype of the message body. | text/html |
exo.ecms.watchdocument.content | The message body. | Check it yourself in exo-sample.properties |
ECMS Document versioning | ||
exo.ecms.documents.versioning.drives | The drives that are enabled for Document versioning. | Managed Sites,Groups,Personal Documents |
exo.ecms.documents.versions.max | The max number of versions that a document can have. | 0 (no limit) |
exo.ecms.documents.versions.expiration | The expiration time (in days) of a document version. | 0 (no limit) |
ECMS Document Viewer | ||
exo.ecms.documents.pdfviewer.max-file-size | Max file size of documents for preview, in MB | 10 |
exo.ecms.documents.pdfviewer.max-pages | Max number of pages of documents for preview | 99 |
Calendar | ||
exo.calendar.default.event.suggest | An integer number n, used to auto-calculate and suggest the end time when users create/edit an event. | 2 (equivalent to 1 hour) |
exo.calendar.default.task.suggest | An integer number n, used to auto-calculate and suggest the end time when users create/edit a task. | 1 (equivalent to 30 mins) |
Site metadata | ||
exo.intranet.portalConfig.metadata.override | Don't change this unless you customize the Intranet site. | false |
exo.intranet.portalConfig.metadata.importmode | Don't change this unless you customize the Intranet site. | insert |
exo.acme.portalConfig.metadata.override | Only affect when you install the ACME addon. | false |
exo.ide.portalConfig.metadata.override | Only affect when you install the IDE addon. | true |
Datasource | ||
exo.jcr.datasource.name | JCR datasource name. | java:/comp/env/exo-jcr |
exo.idm.datasource.name | IDM datasource name. | java:/comp/env/exo-idm |
Clustering | ||
exo.cluster.partition.name | Give a string to identify your cluster, to avoid conflict with other clusters in the network. | DefaultPartition |
exo.jcr.cluster.jgroups.tcp* | JGroups configuration for JCR using TCP. | |
exo.jcr.cluster.jgroups.udp.* | JGroups configuration for JCR using UDP. | |
exo.idm.cluster.jgroups.tcp* | JGroups configuration for IDM using TCP. | |
exo.idm.cluster.jgroups.udp.* | JGroups configuration for IDM using UDP. | |
exo.jcr.cluster.jgroups.config | Path to your customized JGroups configuration file, applied to JCR. | |
exo.jcr.cluster.jgroups.config-url | URL to your customized JGroups configuration file, applied to JCR. | |
exo.idm.cluster.jgroups.config | Path to your customized JGroups configuration file, applied to IDM. | |
Quartz Scheduler | ||
Main Scheduler Properties | ||
exo.quartz.scheduler.instanceName | The name of the scheduler instance. | ExoScheduler |
exo.quartz.scheduler.instanceId | The type of the scheduler instance. | AUTO |
ThreadPool configuration Properties | ||
exo.quartz.threadPool.class | Is the name of the ThreadPool implementation used. | org.quartz.simpl.SimpleThreadPool |
exo.quartz.threadPool.threadPriority | It an integer value between Thread.MIN_PRIORITY (which is 1) and Thread.MAX_PRIORITY (which is 10). | 5 (which is the value of Thread.NORM_PRIORITY) |
exo.quartz.threadPool.threadCount | It is the number of threads that are available for concurrent execution of jobs. | 25 |
JobStore configuration Properties | ||
exo.quartz.jobStore.misfireThreshold | The number of milliseconds the scheduler will tolerate a trigger to pass its next-fire-time by, before being considered misfired. | 6000 |
exo.quartz.jobStore.class | The Scheduler’s JobStore class name. | org.quartz.impl.jdbcjobstore.JobStoreTX |
exo.quartz.jobStore.driverDelegateClass | The Driver delegate which will understand the database system dialect. | org.quartz.impl.jdbcjobstore.StdJDBCDelegate |
exo.quartz.jobStore.useProperties | The flag which instructs JDBCJobStore that all values in JobDataMaps will be Strings. | false |
exo.quartz.jobStore.dataSource | The name of the DataSources defined in the configuration properties file for quartz. | quartzDS |
exo.quartz.jobStore.tablePrefix | The prefix used for to Quartz’s tables in the database. | QRTZ_ |
exo.quartz.jobStore.isClustered | Set to "true" in order to turn on clustering features. | false |
exo.quartz.jobStore.clusterCheckinInterval | Set the frequency (in milliseconds) at which this instance "checks-in" with other instances of the cluster. | 20000 |
exo.quartz.jobStore.maxMisfiresToHandleAtATime | The maximum number of misfired triggers the jobstore will handle in a given pass. | 20 |
exo.quartz.jobStore.dontSetAutoCommitFalse | Setting this parameter to "true" tells Quartz not to call setAutoCommit(false) on connections obtained from the DataSource(s). | false |
exo.quartz.jobStore.acquireTriggersWithinLock | Whether or not the acquisition of next triggers to fire should occur within an explicit database lock. | false |
exo.quartz.jobStore.lockHandler.class | The class name to be used to produce an instance of a "org.quartz.impl.jdbcjobstore". | |
exo.quartz.jobStore.driverDelegateInitString | A pipe-delimited list of properties (and their values) that can be passed to the DriverDelegate during initialization time. | |
exo.quartz.jobStore.txIsolationLevelSerializable | A value of "true" tells Quartz (when using JobStoreTX or CMT) to call setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE) on JDBC connections. This can be helpful to prevent lock timeouts with some databases under high load, and long-lasting transactions. | false |
exo.quartz.jobStore.selectWithLockSQL | Must be a SQL string that selects a row in the "LOCKS" table and places a lock on the row. | SELECT * FROM {0}LOCKS WHERE SCHED_NAME = {1} AND LOCK_NAME = ? FOR UPDATE |
Datasources configuration | ||
exo.quartz.dataSource.quartzDS.jndiURL | The JNDI URL for a DataSource that is managed by eXo Platform. | java:/comp/env/exo-jpa_portal |
Password Encryption | ||
exo.plidm.password.class | The class that encrypts the user password before it is stored in the database. | DatabaseReadingSaltEncoder |
exo.plidm.password.hash | The encrypt algorithm. | SHA-256 |
Elasticsearch Properties | ||
exo.es.version.minor | The expected minor Elastisearch version compatible with eXo Platform. | 5.6 |
exo.es.embedded.enabled | Allows to run an Elasticsearch server embedded in eXo Platform (not recommended for production). | true |
es.cluster.name | Cluster name identifies your Elasticsearch cluster for auto-discovery. If you’re running multiple clusters on the same network, make sure you’re using unique names. | exoplatform-es |
es.node.name | Name of the mode for the embedded mode. If not specified, a name is generated dynamically at startup. | exoplatform-es-embedded |
es.network.host | Sets both 'bind_host' and 'publish_host' params. More details here | "127.0.0.1" |
es.discovery.zen.ping.unicast.hosts | In Unicast dicovery mode, this parameter lets you set a list of master nodes in the cluster to perform discovery when new nodes (master or data) are started. | ["127.0.0.1"] |
es.http.port | TCP Port of the embedded ES node. | 9200 |
es.path.data | Local path to the directory where to Elasticsearch will store index data allocated for this node. | gatein/data |
Elasticsearch Client | ||
exo.es.search.server.url | URL of the node used for searching. Required and exo.es.embedded.enabled=false | "http://127.0.0.1:9200" |
exo.es.search.server.username | Username used for the BASIC authentication on the Elasticsearch node used for searching. | |
exo.es.search.server.password | Password used for the BASIC authentication on the Elasticsearch node used for searching. | |
exo.es.index.server.url | URL of the node used for indexing. | "http://127.0.0.1:9200" |
exo.es.index.server.username | Username used for the BASIC authentication on the Elasticsearch node used for indexing. | |
exo.es.index.server.password | Password used for the BASIC authentication on the Elasticsearch node used for indexing. | |
Elasticsearch Indexing properties | ||
exo.es.indexing.batch.number | Maximum number of documents that can be sent to Elasticsearch in one bulk request. | 1000 |
exo.es.indexing.request.size.limit | Maximum size (in bytes) of an Elasticsearch bulk request. | 10485760 (= 10Mb) |
exo.es.reindex.batch.size | Size of the chunks of the reindexing batch. | 100 |
exo.es.indexing.replica.number.default | Number of replicas of the index. | 1 |
exo.es.indexing.shard.number.default | Number of shards of the index. | 5 |
Enable/Disable activity type | ||
exo.activity-type.activity-type-key.enabled | The property that allows to enable or disable an activity having the type key activity-type-key from posting in the streams. | true |
File storage configuration | ||
exo.files.binaries.storage.type | Allows to define the file storage way: File system (type=fs) or RDBMS (type=rdbms). | fs |
exo.commons.FileStorageCleanJob.enabled | Enables/disables the job that cleans unused files. | true |
exo.commons.FileStorageCleanJob.retention-time | The retention time of unused files | 30 days |
exo.commons.FileStorageCleanJob.expression | The cron job expression for scheduling the file cleaner job | 0 0 11 ? * SUN |
exo.files.storage.dir | The location where to store binary files in case of file system storage. In cluster mode, this location (folder) should be shared. | {exo.data.dir}/files |
eXo Chat | ||
standaloneChatServer | Defines the chat mode: true for the standalone mode and false for the embedded mode. | false |
dbServerType | MongoDB type: either Mongo or embed. Embed value is used for unit tests. | mongo |
dbServerHost | The host name or IP of MongoDB. This parameter is deprecated starting from eXo Platform 5.0 versions and should be replaced by dbServerHosts. | localhost |
dbServerPort | The port number to connect to MongoDB host. Same as the previous parameter, this one is also deprecated from eXo Platform 5.0. It is replaceable by dbServerHosts. | 27017 |
dbServerHosts | The MongoDB nodes to connect to, as a comma-separated list of <host:port> values. | localhost:27017 |
dbName | Name of the Mongo database name. | chat |
dbAuthentication | Enables or disables authentication to access MongoDB. When set to true this means that authentication is required. | false |
dbUser | Provide the username to access the database if authentication needed. | EMPTY |
dbPassword | Provide the password to access the database if authentication needed. | EMPTY |
chatServerBase | Base URL of the Chat Server. It is set as the same value of exo.base.url by default. It must be changed when the chat server is installed in standalone mode. For example : http://127.0.0.1:8081 | exo.base.url |
chatServerUrl | URL to access Chat Server. | /chatServer |
chatPortalPage | Relative URL of the Chat application. | /portal/intranet/chat |
chatPassPhrase | The password to access REST service on the eXo Chat server. | chat |
chatCronNotifCleanup | The frequency of cleaning eXo Chat notifications.They are cleaned up every one hour by default. | 0 0/60 * * * ? |
chatReadTotalJson | The number of messages that you can get in the Chat room. | 200 |
chatIntervalChat | Time interval to refresh messages in a chat. | 5000 |
chatIntervalSession | Time interval to keep a chat session alive in milliseconds. | 60000 |
chatIntervalNotif | Time interval to refresh Notifications in the main menu in milliseconds. | 5000 |
chatTokenValidity | Time after which a token will be invalid. The use will then be considered offline. | 60000 |
exo.chat.upload.limit | Max size of upload files (in Mb) | 100 |
request.timeout | The request timeout in milliseconds of the calls to chat server. | 15000 |
Groovy templates statistics: | ||
exo.statistics.groovy.template.enabled | Enables/disables Groovy Templates statistics that is collected asynchronously. | true |
CometD configuration | ||
exo.cometd.oort.url | The CometD Oort URL used in clustering mode. | "http://localhost:8080/cometd/cometd", localhost should be replaced by the hostname or the IP of the cluster node. |
exo.cometd.oort.configType | The CometD configuration type which could be either "static" or "multicast". | multicast |
exo.cometd.oort.cloud | A comma-separated list of URLs of other Oort comets to connect to at startup. | |
Update of last login time | ||
exo.idm.user.updateLastLoginTime | Enables/disables the update of last login time each time the user login. | true |
Define spaces administrators group | ||
exo.social.spaces.administrators | Defines the list of spaces administrators groups. | |
Assets versions used in static resources URLs | ||
exo.assets.version | Defines the assets version. | It is set to eXo Platform binary version. |
Username case sensitive | ||
exo.auth.case.insensitive | Defines if usernames in eXo Platform are case sensitive or not. | false. |
User inactivity delay | ||
exo.user.status.offline.delay | Defines the time laps which makes the user in offline status. Its value is expressed in milliseconds. | 240000 |
Notifications channels | ||
exo.notification.channels | Defines the activated notification channels. | WEB_CHANNEL, MAIL_CHANNEL |
Wiki application base URI | ||
wiki.permalink.appuri | Defines the base URI for the wiki application permalinks. | wiki |
Files upload limit | ||
exo.ecms.connector.drives.uploadLimit | Maximum size (in MB) allowed of an uploaded file. | 200 |
exo.social.activity.uploadLimit | Maximum size (in MB) allowed of an uploaded image through the CKEditor. | 200 |
exo.wiki.attachment.uploadLimit | Maximum size (in MB) allowed of an uploaded file in Wiki application. | 200 |