Re: Pg JDBC 3 driver, JDK 1.6, Glassfish v2 incompatability - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: Pg JDBC 3 driver, JDK 1.6, Glassfish v2 incompatability
Date
Msg-id Pine.BSO.4.64.0704091159320.13571@leary.csoft.net
Whole thread Raw
In response to Pg JDBC 3 driver, JDK 1.6, Glassfish v2 incompatability  (Thor-Michael Støre <thor-michael.store@webvelocity.no>)
List pgsql-jdbc

On Mon, 9 Apr 2007, Thor-Michael St�re wrote:

> CAUSE: On further investigation, Postgres jdbc driver's Connection from
> ConnectionPoolDataSource/XADataSource is a proxy of java.sql.Connection,
> This proxy, in jdk 1.6 will list all methods of jdbc 4.0 connection
> (even though the datasource is only jdbc 30) This makes GlassFish to
> decide (during initialization of datasource) that it is a jdbc 4.0
> compatible connection and calls jdbc 4.0 methods of Connection, causing
> AbstractMethodError thrown.
>

The real problem is that you are using the JDBC3 instead of JDBC4 driver
with a 1.6 JVM.  I don't believe that either PG or Glassfish are at fault.
When the JDBC3 driver was built (under a 1.4/1.5) JDK it does implement
all java.sql.Connection methods so it is fine to proxy for it.  When run
under a 1.6 JVM the proxying suddenly claims to implement more methods
which Glassfish reasonably tries to use.  So I think it's really a
configuration error on your part.

Kris Jurka

pgsql-jdbc by date:

Previous
From: Thor-Michael Støre
Date:
Subject: Pg JDBC 3 driver, JDK 1.6, Glassfish v2 incompatability
Next
From: Kris Jurka
Date:
Subject: Re: Problem with Running Query