[PATCH] NPE in meta data getPrimaryKeys()

From: Anders Hermansen <anders(at)yoyo(dot)no>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: [PATCH] NPE in meta data getPrimaryKeys()
Date: 2002-12-17 16:35:16
Message-ID: 20021217163516.GA17309@online.no
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Hello,

I'm trying to use jakarta ojb for database access in a web application.
For this I have to generate a object-relational mapping. There is a
tool, reversedb, that will generate this for a live database.

When I run this against my postgresql database I get the following
exception:

java.lang.NullPointerException
at
org.postgresql.jdbc1.AbstractJdbc1DatabaseMetaData.escapeQuotes(AbstractJdbc1DatabaseMetaData.java:1666)
at
org.postgresql.jdbc1.AbstractJdbc1DatabaseMetaData.getPrimaryKeys(AbstractJdbc1DatabaseMetaData.java:2899)
at
org.apache.ojb.tools.mapping.reversedb.DBMeta.read(Unknown Source)
at
org.apache.ojb.tools.mapping.reversedb.gui.JFrmMainFrame.analyzeSchema(Unknown
Source)
(...)

It fails with a npe because table was set to null. Is setting table to
null for the getPrimaryKeys illegall according to jdbc specification?

As it seems ojb is requesting primary keys for all tables when table is
set to null, and is assuming this will be legal

From line 279 i in DBMeta.read() in ojb source:
rs = this.dbMeta.getPrimaryKeys(null, null, null);

Attached is a patch which makes the getPrimaryKeys method accept the
value of null for the table parameter.

Is this the correct solution?

Anders

--
Anders Hermansen
YoYo Mobile as

Attachment Content-Type Size
pg-metadata-npe.diff text/plain 1.0 KB

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Dave Cramer 2002-12-17 16:43:56 Re: [PATCH] NPE in meta data getPrimaryKeys()
Previous Message Neil Conway 2002-12-17 16:31:52 Re: 7.3 Prepared statements