No suitable drivers found for jdbc: db2: in java

advertisements

I'm trying to connect to a remote database using the following java code, but I get an error saying no suitable driver found

I have included the required db2 libraries in my project:

I have declared the jdbc settings in the main class

Settings.loadSettings();

Class.forName("Settings.DB2_JDBC_DRIVER");

Controller con = new Controller();
con.business_logic();
}

Then trying to connect the database in another class

public Connection getDBConnection()
{
Connection DBConnection = null;
try {
  System.out.println("Connecting to  database " + Settings.DBName + ".");
  String DBURL = "jdbc:db2://" + Settings.DBServer + ":" + Settings.DBPort +
 "/" + Settings.DBName + ";";
  String decryptedPass = decryptPassString(Settings.DBPass);
  DBConnection = DriverManager.getConnection(DBURL, Settings.DBUser,
  decryptedPass);
  System.out.println("Database connection successfully established to
  database " + Settings.DBName + " using user " + Settings.DBUser + ".");
  return DBConnection;
 }
 catch (Exception e) {
  System.out.println("An unexpected error occurred when attempting to
 establish connection to  database " + Settings.DBName + ". The error was: "
 + e.getMessage() + "\r\n" + e.getMessage()); }
return DBConnection;
}

can anyone please explain what i am missing here ?

The error message i am receiving is

An unexpected error occurred when attempting to establish connection to database DWHER00. The error was: No suitable driver found for jdbc:db2:/


The line:

Class.forName("Settings.DB2_JDBC_DRIVER");

should ideally be something like this:

Class.forName("com.ibm.db2.jcc.DB2Driver");

unless you are creating your own driver for DB2.

You will need the JAR files for the DB2 installation that you are using.

Put them in the class path and make the above code change. And it should work.


IBM DB2 Universal Driver Type 4

Driver Class Name:

com.ibm.db2.jcc.DB2Driver

Driver Jar Files: db2jcc.jar and db2jcc_license_cu.jar (Both of these jars must be included)

JDBC URL Format:

jdbc:db2://<host>[:<port>]/<database_name>

JDBC URL Examples:

jdbc:db2://127.0.0.1:50000/SAMPLE


IBM DB2 Universal Driver Type 2

Driver Class Name:

com.ibm.db2.jcc.DB2Driver

Driver Jar Files: db2jcc.jar and db2jcc_license_cu.jar (Both of these jars must be included)

JDBC URL Format:

jdbc:db2:<database_name>

JDBC URL Examples:

jdbc:db2:sample


Hope this helps!