IBM Support

What is the correct / best OJDBC JAR file to use with Cognos Controller?



There are many different types of Oracle JAR file, for example:
What is the best/correct file to use with my Controller system?


Controller requires a Java Database Connectivity file (also known as a 'JDBC Thin Driver') to connect its several JAVA components with the database server.
  • Oracle have produced many different versions of their JDBC thin driver.
  • The number refers to the version of JDK/JRE that they were compiled with/for (strictly speaking, not the version of the file!).
    • For example OJDBC14 is compiled with JDK 1.4
    • Therefore OJDBC14.JAR files are generally older than OJDBC5.JAR files (which were compiled for JDK 5).

To summarise:
JRE version
Easy location to obtain from
Alternative source location
Legacy (historic) - not supported by Oracle
Oracle 11G rel2 client
Download from
Oracle 11G rel2 or 12C client
Download from
Oracle 12C client
Download from

In addition, there are different versions of the same file name. For example:
Version (date modified)
Oracle 11G rel2 client
3,692,104 bytes
23/02/2010 21:09
Oracle JDBC 4.0 compiled with JDK6
Oracle 12C client
2,111,338 bytes
29/08/2014 05:14
Oracle JDBC 4.0 compiled with JDK6 on Thu_Aug_28_19:10:23_PDT_2014

It is therefore important to obtain/use both the correct file name (filename) and version (date/size).


Customer is hosting their Controller databases on an Oracle database server.
  • TIP: If you are using Microsoft SQL (or DB2) then see separate Technote #301623.

Diagnosing The Problem

To find out the exact version of the JAR file (see above inside 'Details' column), run a command similar to the following: java -jar <filename>


Imagine a scenario where you have a Controller 10.2.1 application server with:

  • Controller client installed in default location
  • Oracle 11G rel2 client installed in default location

The command is:

"C:\Program Files (x86)\IBM\IBM Cognos Controller\Integration\jre\bin\java" -jar "C:\app\Administrator\product\11.2.0\client_1\jdbc\lib\ojdbc6.jar"

Resolving The Problem

Different versions of Controller support different versions of Oracle
  • At the time of writing (August 2016), the current latest version of Controller (10.2.1 FP4) supports Oracle 11G R1, Oracle 11G R2 and Oracle 12C R1.

Because of a high amount of compatibility (between different JAR files) it is likely that Controller would work OK with many different OJDBC files.

However, based on customer feedback, IBM Support recommends the following as a basic guideline:

If using Oracle 11G R2 as your database server:
Use the ojdbc5.jar file (which comes from the Oracle 11G Rel2 client), because this is the version that is most tested 'in the field'.
  • TIP: Assuming you have installed the Oracle 11G rel2 client in the default location, then you can find this (on the Controller application server) here: C:\app\Administrator\product\11.2.0\client_1\jdbc\lib
  • If any errors/problems arise when using this file, then use ojdbc6.jar (which also comes from the Oracle 11G Rel2 client) instead.

If using Oracle 12C R1 as your database server:
Use the ojdbc7.jar file (which comes from the Oracle 12C client).
In addition, there are updated (patched) versions of the above files, which are downloadable from Oracle.
  • For example, see link below.
IMPORTANT: If you choose to use ojdbc7.jar then you must make a change to the file ''
  • Specifically, you need to add the following line:   oracle.jdbc.autoCommitSpecCompliant=false
  • For more details, see separate IBM Technote #2000945.

[{"Product":{"code":"SS9S6B","label":"Cognos Controller"},"Business Unit":{"code":"BU002","label":"Business Analytics"},"Component":"Controller","Platform":[{"code":"PF033","label":"Windows"}],"Version":"10.2.1","Edition":""}]

Document Information

Modified date:
12 December 2019