Platform Explorer / Nuxeo Platform 11.3

Extension point datasources

Documentation

Example contribution:

    <datasource driverClassName="org.h2.Driver" maxTotal="20"
        maxWaitMillis="10000" minTotal="5" name="jdbc/foo">
        <property name="url">jdbc:h2:/home/db;DB_CLOSE_ON_EXIT=false
          </property>
        <property name="username">nuxeo</property>
        <property name="password">nuxeo</property>
    </datasource>

Or, for a XA datasource:

    <datasource maxTotal="20" maxWaitMillis="10000" minTotal="5"
        name="jdbc/foo" xaDataSource="org.h2.jdbcx.JdbcDataSource">
        <property name="databaseName">/home/db</property>
        <property name="createDatabase">create</property>
        <property name="user">nuxeo</property>
        <property name="password">nuxeo</property>
    </datasource>

The allowed attributes of a datasource

element are:

  • name the JNDI name (for instance jdbc/foo )
  • driverClassName the JDBC driver class name (only for a non-XA datasource)
  • xaDataSource the XA datasource class name (only for a XA datasource)

To configure the characteristics of the pool:

  • maxTotal the maximum number of active connections
  • minTotal the minimum number of idle connections
  • maxWaitMillis the maximum number of milliseconds to wait for a connection to be available, or -1 (the default) to wait indefinitely
  • ... see org.apache.commons.dbcp.BasicDataSource setters for more.

To configure the datasource, individual property sub-elements must be used. For a non-XA datasource, url

, username

and password

are commonly used. For a XA datasource, the properties are done according to the JavaBean setters of the datasource, see the documentation for your JDBC driver for more.

Contribution Descriptors

Existing Contributions

Contributions are presented in the same order as the registration order on this extension point. This order is displayed before the contribution name, in brackets.

  • nuxeo-runtime-11.3.56.jar /opt/nuxeo/server/nxserver/config/datasources-config.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <extension point="datasources" target="org.nuxeo.runtime.datasource">
        <datasource accessToUnderlyingConnectionAllowed="true" driverClassName="org.h2.Driver" maxTotal="100" maxWaitMillis="1000" minTotal="5" name="jdbc/nuxeo" password="********" url="jdbc:h2:/var/lib/nuxeo/h2/nuxeo;DB_CLOSE_ON_EXIT=false" username="sa" validationQuery="">********</datasource>
        <link global="jdbc/nuxeo" name="jdbc/NuxeoDS" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxsqldirectory" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxrelations-default-jena" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/comment-relations" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxaudit-logs" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxjbpm" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/placeful_service_ds" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxwebwidgets" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/nxuidsequencer" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/keyvaluestore" type="javax.sql.DataSource"/>
        <link global="jdbc/nuxeo" name="jdbc/repository_default" type="javax.sql.DataSource"/>
      </extension>