Re: Tomcat DB2 connection - No suitable driver
From: amurchis (amurchis_at_ca.ibm.com)
Date: 10/25/04
- Next message: Jonck: "Storing & in MySQL"
- Previous message: Shanmuhanathan T: "Re: OCI jdbc connection with Tru64"
- In reply to: Andrew Johnson: "Tomcat DB2 connection - No suitable driver"
- Next in thread: amurchis: "Re: Tomcat DB2 connection - No suitable driver"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Mon, 25 Oct 2004 11:19:10 -0400
The attempted connection will throw the error you are seeing if the
class has not been loaded first. The most common source of this is if
the driver class you specified is not found in your CLASSPATH. On
issuing the Class.forName() call, the java classloader will search the
CLASSPATH for a class with the given name, and load it into memory. An
exception is not thrown here unless you try to create a newInstance() of
the class.
Thus, you'll need to modify your CLASSPATH to include the location of
the DB2 Java drivers.
Andrew Johnson wrote:
> Hi,
>
> I am trying to make a UBD DB2 7.2 connection using the Java
> COM.ibm.db2.jdbc.app.DB2Driver via Tomcat 3.2.1 on Solaris (and also
> on an AIX system with 3.3.1). I am attempting this either via JSP or
> a servlet.
>
> I have a separate java application that I can run from the command
> line and as long as the user has the correct env variables:
>
> DB2DIR=/opt/IBMdb2/V7.1
> DB2INSTANCE=repowner
> INSTHOME=/home/repowner
>
> Then the connection is fine. I am using the same code to try and make
> the connection via tomcat.
>
> try
> {
> Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
> // next line is printed out
> System.out.println(new java.util.Date().toString() + " DRIVER
> FOUND.");
> }
> catch(ClassNotFoundException e)
> {
> System.out.println(new java.util.Date().toString() + " Error 1:
> "+e);
> }
> String dbType="db2";
> // String ip="10.0.0.185";
> // String port="8790";
> String dbName="ppreport";
> String reason="testing db connection";
> String userName="repowner";
> String password="ilink1";
> Connection con = null;
>
> String url = "jdbc:db2:"+dbName;
>
> boolean dbConnected = false;
>
> try
> {
> System.out.println(new java.util.Date().toString() + " Connecting
> to database URL = " + url + " for " + reason);
>
>
> Enumeration e = DriverManager.getDrivers();
> while (e.hasMoreElements()) {
> Driver d = (Driver) e.nextElement();
> // doesn't print anything here
> System.out.println("driver is " + d.toString());
> }
> System.out.println("a1");
> // gets to here and stops!
> Driver d = DriverManager.getDriver(url);
> System.out.println("a1.1"+d.toString());
>
> con = DriverManager.getConnection(url, userName, password);
>
> java.sql.Statement stmt = con.createStatement();
> System.out.println("SETTING SCHEMA TO "+dbName);
> try {
> stmt.execute("SET SCHEMA = "+dbName);
> System.out.println("SCHEMA SET.");
> }
> catch (Exception ex) {
> System.out.println("Error Setting Schema:"+ex);
> }
>
> System.out.println(new java.util.Date().toString() + " Database
> connection established.XX");
> dbConnected = true;
> }
> catch(Exception e)
> {
> System.out.println(new java.util.Date().toString() + " Failed to
> connect, reason : \n" + e);
>
> }
>
> However via tomcat the driver cannot be loaded by the class loader.
> The class is found, but not loaded. The error I receive is
> "java.sql.SQLException: No suitable driver"
>
> I have placed the db2java.zip (renamed as db2java.jar) in several
> places to try and solve the problem (restarting Tomcat each time) but
> to no avail:
>
> /usr/apache/tomcat/common/lib/db2java.jar
> .../WEB-INF/classes/db2java.jar
>
> I have read many posts, but I can't understand how the driver will
> know the correct env variables even if the class is loaded.
>
> Any help would be much appreciated!!!
>
> Thanks!
> Andy.
- Next message: Jonck: "Storing & in MySQL"
- Previous message: Shanmuhanathan T: "Re: OCI jdbc connection with Tru64"
- In reply to: Andrew Johnson: "Tomcat DB2 connection - No suitable driver"
- Next in thread: amurchis: "Re: Tomcat DB2 connection - No suitable driver"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|