Skip to end of metadata
Go to start of metadata
Warning
The following describes changes in the low-level Nuxeo configuration files. Starting with Nuxeo 5.3.2, a template system is used to change Nuxeo configuration, and by default the files described below will be overwritten by those from the templates at each startup. See the documentation on [How to configure Nuxeo EP] for more about templates.

Before starting, make sure your Oracle database is correctly configured by checking the Oracle configuration.

JDBC Driver

Download the appropriate JDBC driver from: http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html.
This JAR must then be placed in $JBOSS/server/default/lib/ or $TOMCAT/lib/.

NB: the driver (ojdbc14.jar) used to test this configuration can be found here http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html.

JBoss configuration

To use a Oracle DB with Nuxeo and VCS (Visible Content Store) you need to configure Nuxeo:

datasources/default-repository-ds.xml

You should check that the rar-name references the .rar in nuxeo.ear/system (check the version number).

datasources/unified-nuxeo-ds.xml

For a non-transactional configuration:

For a transactional configuration:

Nuxeo and libraries used by Nuxeo (jbpm, jena ...) create tables the first time they are used. To know if they need to create the table, they check if the table exists in the schema. Before NXP-4601 was fixed, it was done accross the DB. So if you are using Oracle DB with multiple Nuxeo instance you need to patch Nuxeo or use a version after 5.3.0.

datasources/nxtags-ds.xml (not needed since Nuxeo 5.3.2)

config/sql.properties

nuxeo.ear/hibernate.properties

You also need to tell hibernate in which schema your table are: add a file nuxeo.ear/hibernate.properties with the content:

Unfortunately, hibernate doesn't take this setting into account for updating table. So the same kind of problem will happens if a schema uses an old jbpm version. To fix it you need to use a patched version of hibernate. For more information see NXP-4604

Oracle doesn't allow DDL statement inside a transaction so all table creations has to be done at server start up when using a transactional datasource. This is not the case at the moment, you can follow NXP-4606 to see when it will be possible. Waiting for this improvement to be implemented, the solution is to use a non-transactional datasource the first time Nuxeo is started and switch to a transactional datasource after all the table are created.

For more information about Oracle Datasource http://community.jboss.org/wiki/SetupAOracleDataSource.

To download an example configuration https://maven.nuxeo.org/nexus/index.html#nexus-search;gav~org.nuxeo.ecm.platform~nuxeo-platform-ear~~~resources-oracle.

If the character set of your Oracle instance is not in this list: UTF8, US7ASCII, WE8DEC, WE8ISO8859P1 or WE8MSWIN1252, please refer to the section on non-standard character sets in the page about Oracle configuration.

Tomcat configuration

To use Oracle with the Tomcat distribution of Nuxeo, you need to change some files:

The resources should looks like:

for each resource.

For the tag service, define the resource like this (not needed since Nuxeo 5.3.2):

And change the repository configuration:

The configuration should looks like:

And finally:

  • nxserver/config/commentService-config-bundle.xml
  • nxserver/config/nxrelations-default-jena-bundle.xml
  • nxserver/config/sql.properties

where you should change "databaseType" property from "Derby" to "Oracle" and "databaseTransactionEnabled" property set to "false"

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.