Skip site navigation (1) Skip section navigation (2)

(Yet another) unable to connect w/ JDBC via hostname

From: Mark Dzmura <mdz(at)phalanx(dot)phalanx(dot)net>
To: pgsql-interfaces(at)postgresql(dot)org
Subject: (Yet another) unable to connect w/ JDBC via hostname
Date: 1999-07-27 17:45:46
Message-ID: 379DF04A.D83FB420@phalanx.net (view raw or flat)
Thread:
Lists: pgsql-interfaces
Help!

I am writing some software which uses JDBC to access SQL databases,
and am using Postgresql in the SQL database role.

I am unable to connect to a database using a "fully qualified"
URL to name the database.

I have searched the postgresql [INTERFACE] mailing list archives and
found some related problems, but the answers seem to point to the
pg_hba.conf file - and I believe I have uncommented and modified a line
in the default file which should give access to hosts on my LAN.

On to my problem:

For example, I if I use any of the following URL's, running the client on the same
machine which hosts the database:

 jdbc:postgresql:db1
 jdbc:postgresql://127.0.0.1/db1
 jdbc:postgresql://localhost/db1

it WORKS!!

However, if I try to use a fully-qualified address:

 jdbc:postgresql://enterprise.foobar.com/db1
 jdbc:postgresql://enterprise/db1

it fails with the following goofy error message:

 $ java com.foobar.jdbc.DBTest // comments added manually!
 loading driver!    // my output
 connecting to database  // my ouput
 Exception thrown!   // my output
 // following is driver output:
 Something unusual has occured to cause the driver to fail. Please report this exception: {1}
  at postgresql.Driver.connect(Compiled Code)
  at java.sql.DriverManager.getConnection(Compiled Code)
  at java.sql.DriverManager.getConnection(Compiled Code)
  at com.foobar.jdbc.DBTest.main(Compiled Code)

--------------------------------
Now for some background:

1. I am using the following software:

 - Red Hat Linux 5.2 with kernel 2.2.7
 - Blackdown JDK 1.2.pre-beta-1
 - Postgresql 6.5 (latest version, not the one that came with Redhat)
 - Postgresql JDBC (jdbc6.5-1.2.jar)

2. Both of the host names used in the (failing) examples above
   are locally resolvable:

   enterprise
   enterprise.foobar.com

3. postgresql is running with the -i switch, enabling internet access

   $ ps ax | grep pg
    4811  ?  S    0:00 /usr/local/pgsql/bin/postmaster -i

4. The access file, pg_hba.conf contains the following line:

   host         all   208.205.224.0   255.255.255.0     ident     sameuser

   The intention is to allow any host on the local network to
   access any database using "ident" validation semantics (unix users).

5. The database was stopped and started after making these changes.

6. The following Java code tries to open a connection (in both
   the working and non-working cases):

   Connection db = DriverManager.getConnection(dbURL,
              user,
              pass);

 The user and pass strings are a valid unix user and password,
 and the user has full access to the database in question.

 As mentioned above, This call throws an exception if dbURL is
 fully qualified (even if the machine name is the localhost),
 but NOT if it refers to a local database.

Any ideas ??

Thanks,
Mark Dzmura

--
)))) This email routed via a wireless gateway!! ((((




Responses

pgsql-interfaces by date

Next:From: Justin M. MahoneyDate: 1999-07-27 22:00:23
Subject: Can't get any ODBC under linux-i386
Previous:From: Mark DzmuraDate: 1999-07-27 17:32:03
Subject: Help with JDBC access

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group