Re: java.sql.SQLException: No suitable driver - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: java.sql.SQLException: No suitable driver
Date
Msg-id 37D75CA0-89B0-45F4-B183-88F06B3A3304@fastcrypt.com
Whole thread Raw
In response to Re: java.sql.SQLException: No suitable driver  ("Mads N. Vestergaard" <mnv@timmy.dk>)
Responses Re: java.sql.SQLException: No suitable driver  ("Mads N. Vestergaard" <mnv@timmy.dk>)
List pgsql-jdbc
Mads,

And how do you execute the program ? One thing that can help is to run java -verbose to see what it is doing.

Dave
On 27-Apr-06, at 9:46 AM, Mads N. Vestergaard wrote:

Hi Dave,
My Classpath is:
 
hostname:~$ echo $CLASSPATH
/usr/share/java/pg74.216.jdbc3.jar

And the file exists:
hostname:~$ ls -la /usr/share/java/pg74.216.jdbc3.jar 
-rwxr-xr-x  1 root root 210371 2006-04-27 09:52 /usr/share/java/pg74.216.jdbc3.jar

Dave Cramer wrote:
Mads,

What is your classpath.

inevitably this is the problem.

Dave
On 27-Apr-06, at 9:31 AM, Mads N. Vestergaard wrote:

Well, it gives me:

java.lang.ClassNotFoundException: org.postgresql.Driver
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at Database.<init>(Database.java:16)
        at Gateway.main(Gateway.java:19)

But I think you're right... But my problem is, that if I try to run it with the classpath flag, and also the classpath environment vartiable, it fails.
The path is correct.

I believe that I have overseen something, but I have looked over the setup a dusin of times now, and I can't spot it.


Dave Cramer wrote:
5 will get you 10 that your class path isn't setup correctly. Try adding ex.printStackTrace() to the catch handler for Class.forName

Dave
On 27-Apr-06, at 8:19 AM, Mads N. Vestergaard wrote:

Hi Everybody, when I try to run my program, I get the following error message:
java.sql.SQLException: No suitable driver
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at Database.(Database.java:20)
        at Gateway.main(Gateway.java:19)
Exception in thread "main" java.lang.NullPointerException
        at Database.SQLget(Database.java:71)
        at Gateway.main(Gateway.java:33)
My connect code is:
try {
    Class.forName("org.postgresql.Driver");
      }catch (ClassNotFoundException e){
      }
      try {
        db = DriverManager.getConnection("jdbc:postgresql://hostname/" + dbName,"bruger","kode");
      } catch (SQLException e) {
        e.printStackTrace();
      }
On my system I have putted the jdbc driver for postgres into the classpath:
hostname:~$ echo $CLASSPATH
/usr/share/java/pg74.216.jdbc3.jar
Java version:
hostname:~$ java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)
As far as I know it should work since, it is correct in the classpath. I have also tried with other postgres jdbc drivers. In my IDE(Eclipse), it works fine, but on my production server it gives the error. 
I've also tried to run the program with the -classpath flag, with the same result.
Have I simply forgotten something, or is there something seriously wrong?
Thanks in advance.





pgsql-jdbc by date:

Previous
From: "Mads N. Vestergaard"
Date:
Subject: Re: java.sql.SQLException: No suitable driver
Next
From: Dave Cramer
Date:
Subject: Re: Bug with callable statement and output parameters