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: