Re: jdbc works in java app, fails in servlet: "no suitable jdbc found" - Mailing list pgsql-jdbc

From Craig Ringer
Subject Re: jdbc works in java app, fails in servlet: "no suitable jdbc found"
Date
Msg-id 4C05F409.7060805@postnewspapers.com.au
Whole thread Raw
In response to jdbc works in java app, fails in servlet: "no suitable jdbc found"  (philfrei@aol.com)
Responses Re: jdbc works in java app, fails in servlet: "no suitable jdbc found"  (Lew <noone@lewscanon.com>)
Re: jdbc works in java app, fails in servlet: "no suitable jdbc found"  (philfrei@aol.com)
List pgsql-jdbc
On 02/06/10 12:56, philfrei@aol.com wrote:
> Hi - I am new to Postgresql (and Eclipse and Tomcat--triple threat),and
> would have posted this question in the general section, but thought it
> might be more appropriate here since it concerns the JDCB.
>
> I have successfully installed and run some example programs from Core
> Java II by Horstmann. I wish to connect to a database from a Java
> Servlet, and tried using the same code and properties as is being used
> in a Java application program (which successfully connects to the same
> db), but am getting the following error when executing the
> DriverManager.getConnection(url, username, password) code:
>
> java.sql.SQLException: No suitable driver found for jdbc:postgresql:gpsdata

The JRE's JDBC is complaining that it doesn't know what to do with URLs
of type 'jdbc:postgresql'. This means that the PostgreSQL JDBC driver
hasn't been loaded.

You need to preload the PostgreSQL driver, org.postgresql.Driver , to
register it with JDBC so that JDBC knows to use it for 'postgresql' URLs.

Load the JDBC driver with with 'Class.forName' if it's on the System
classpath, or (preferably) the classloader that loaded your servelet.

> Is a different driver needed in the "Servlet" context?

No, but you might need to load it differently if your container doesn't
use the system classloader.

You can use the classloader that loaded the currently running object with:

  this.getClass().getClassLoader().loadClass('org.postgresql.Driver');

--
Craig Ringer

Tech-related writing: http://soapyfrogs.blogspot.com/

pgsql-jdbc by date:

Previous
From: philfrei@aol.com
Date:
Subject: jdbc works in java app, fails in servlet: "no suitable jdbc found"
Next
From: Jason Tesser
Date:
Subject: Re: Found a Bug in latest Driver (I THINK) and pg 8.4