Re: Trouble connecting - Mailing list pgsql-jdbc

From john guthrie
Subject Re: Trouble connecting
Date
Msg-id 3DB456EB.9060608@psynapsetech.com
Whole thread Raw
In response to Trouble connecting  (Antonie C Malan <malan2000@optusnet.com.au>)
List pgsql-jdbc
i'll start by saying i don't know what the problem is here. the url
looks fine to me.

you probably know this, but my understanding is that what happens in
jdbc is when the org.postgresql.Driver class gets loaded (during the
Class.forname()) in it's static initializer it registers itself as a
jdbc driver with the DriverManager. then when
DriverManager.getConnection() is called, the DriverManager runs through
its list of jdbc drivers and presents each of them with the first part
of the url ("jdbc:postgresql"). the first driver that recognizes the url
then returns a connection.

so, either you have another driver in your DriverManager that is
short-circuiting the request or your postgresql is not recognizing the
"jdbc:postgresql" string. neither seems likely to me. maybe there's some
weird unprintable in your url?

note that this error has nothing to do at all with whether the database
is up and running, much less whether your username and password are
valid - you're not even getting that far.

looking at the code for org.postgresql.Driver.java from 7.2.2 doesn't
point anything out either (that i can see). it checks if the first token
(":"- delimited, among others) is "jdbc" or "postgresql", and it pretty
much accepts the second piece.

so if i were you, i think i'd get out the old debugger (aka
"System.out.println") and start putting some statements in
org.postgresql.Driver

sorry i'm not more help here,
john

Antonie C Malan wrote:
> Hi All,
>
> I have a Mandrake 9.0 setup.  The Postgresql came with it as did the drivers.
> I also downloaded an driver package from the postgresql site, no luck.
>
> -- These are the relevant bits of my code:
> String url = "jdbc:postgresql://localhost:5432/Patients";
>         Connection conn = null;
>         java.sql.Statement stmnt = null;
>         java.sql.ResultSet result = null;
>         try{
>           Class.forName("org.postgresql.Driver");
>           conn = DriverManager.getConnection(url, user, pwd);
> User and password (pwd) are fed in as string from the command line.
>
> This is as far as it gets before an exception is thrown.
>
> I did import java.sql.* and tried three different driver packages -
> jdbc7.1-1.2.jar, jdbc7.2dev-1.2.jar and downloaded and tried pgjdbc2.jar from
> the PostgreSQL site.  At different times they all were in the classpath.
> These are all precompiled packages and should run on my JDK1.4.0
>
> The following exception is thrown:
> java.sql.SQLException: Driver not found for URL:
> jdbc:postgresql://localhost:5432/Patients
>
>
> Note that it is not a ClassNotFoundException, so it seems the driverpackage is
> found and used.  I tried different things with the URL, like:
> jdbc:postgresql:Patients
> all to no avail.
>
> I've also tried to get a driver that supports this URL in a roundabout way
> doing something like DriverManager.getDriver(String url) - It returns a  null
> driver. Details may be different for this last ploy - I don't have the API
> open at the moment. Looks as if there is something wrong with the drivers
> I've got.  I can connect to the database from a term and using Postgresql
> Access.
>
> I am out of ideas with my back against the wall.  I'll be grateful for any
> help.
>
> Chris Malan
> malan2000@optusnet.com.au
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

--
john guthrie
jguthrie@psynapsetech.com (was jguthrie@air.org)


pgsql-jdbc by date:

Previous
From: "Adebayo A. Alabi"
Date:
Subject: questions
Next
From: Toby Doig
Date:
Subject: Re: getArray/setArray - desperately need to know how the