IBM Support

NoClassDefFoundErr oracle.jdbc.driver.DMSFactory (initialization failure) when connecting to Content Manager repository

Troubleshooting


Problem

Connection to IBM Content Manager Enterprise Edition (CM) from IBM Content Navigator (ICN) Administration desktop with an Oracle database fails with an error.

Symptom

The following error appears in the SystemErr.log:


0000008e SystemErr     R CIWEB Error: [wasadmin(unknown) @ 127.0.0.1] com.ibm.ecm.struts.actions.BaseActionHandlerImpl.executeAction()
java.lang.NoClassDefFoundError: oracle.jdbc.driver.DMSFactory (initialization failure)
       at java.lang.J9VMInternals.initialize(J9VMInternals.java:175)
       at oracle.jdbc.driver.PhysicalConnection.createDMSSensors(PhysicalConnection.java:2121)
       at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:730)
       at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:433)
       at oracle.jdbc.driver.T4CDriverExtension.getConnection(
...
.        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
       at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1892)
Caused by: java.lang.NoClassDefFoundError: oracle.dms.console.DMSConsole
       at oracle.jdbc.driver.DMSFactory.<clinit>(DMSFactory.java:48)
       at java.lang.J9VMInternals.initializeImpl(Native Method)
       at java.lang.J9VMInternals.initialize(J9VMInternals.java:235)
       at oracle.jdbc.driver.PhysicalConnection.createDMSSensors(PhysicalConnection.java:2121)
       at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConn
....
.       at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
       at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
       at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
       ... 1 more
Caused by: java.lang.ClassNotFoundException: oracle.dms.console.DMSConsole
       at java.net.URLClassLoader.findClass(URLClassLoader.java:432)
       at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:243)
       at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:701)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:680)
       at com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:134)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:663)
       at com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:62)
       at com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:58)
       at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:618)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:663)
       at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:618)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:663)
       ... 105 more

Cause

The error is caused by an incorrect Oracle JDBC (ojdbc) connection or a missing .jar file.

Environment

ICN and CM with Oracle Database

Resolving The Problem

  • Make sure the ORACLE_JDBC_DRIVER_PATH is set to the directory where odbc6.jar is located
    e.g. /users/app/nexus/oracle/jdbc/lib/
  • Make sure dms.jar and smplefan.jar exist in this directory.
  • After changing ORACLE_JDBC_DRIVER_PATH or the content of this directory the application server needs to be restarted.

NOTE: Only odbc6 related .jar files exist in the ORACLE_JDBC_DRIVER_PATH directory and odbc5 or odbc7 jar files should not be included.

[{"Product":{"code":"SSEUEX","label":"IBM Content Navigator"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"ICN and CM Multi EE","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF016","label":"Linux"},{"code":"PF033","label":"Windows"}],"Version":"2.0.3.8;3.0.0","Edition":"","Line of Business":{"code":"LOB18","label":"Miscellaneous LOB"}}]

Document Information

Modified date:
17 June 2018

UID

swg22001697