Re: RowSet error - Mailing list pgsql-jdbc

From Michael Laccetti
Subject Re: RowSet error
Date
Msg-id 20050314162744.6E37956385@svr1.postgresql.org
Whole thread Raw
In response to Re: RowSet error  ("Michael Laccetti" <michael@s2g-limited.com>)
List pgsql-jdbc
More information:  The problem was originating in
org.postgresql.jdbc2.AbstractJdbc2ResultSetMataData, in getColumnDisplaySize(int
column).  For some reason, typmod was set to -5.  This was down by the 'variable
length fields' comment, at the bottom of the method.  I put in another check to
make sure that if a negative return value was being attempted, bump it to zero.
That seems to have fixed it.

But again, this is very ugly and dirty and wrong.  It'll be nice if Sun comes up
with an answer for this.

Mike


-----Original Message-----
From: pgsql-jdbc-owner@postgresql.org [mailto:pgsql-jdbc-owner@postgresql.org]
On Behalf Of Michael Laccetti
Sent: March 14, 2005 10:14
To: pgsql-jdbc@postgresql.org
Subject: Re: [JDBC] RowSet error

I did attempt to implement the fix suggested here:
http://archives.postgresql.org/pgsql-jdbc/2005-02/msg00049.php.  However, I
still get the same problem.  I'm not sure if I've missed something, or if
there's another call somewhere.  The stack trace of the exception is:

java.sql.SQLException: Invalid column display size. Cannot be less than zero
    at
javax.sql.rowset.RowSetMetaDataImpl.setColumnDisplaySize(RowSetMetaDataImpl.java
:267)
    at
com.sun.rowset.CachedRowSetImpl.initMetaData(CachedRowSetImpl.java:702)
    at com.sun.rowset.CachedRowSetImpl.populate(CachedRowSetImpl.java:620)

The specific code trying to populate it seems to be relatively simple:
rslt = stmt.executeQuery(query);
crs.populate(rslt);

That's about all that I have.

Mike

-----Original Message-----
From: Kris Jurka [mailto:books@ejurka.com]
Sent: March 13, 2005 17:06
To: Michael Laccetti
Cc: pgsql-jdbc@postgresql.org
Subject: Re: [JDBC] RowSet error



On Sun, 13 Mar 2005, Michael Laccetti wrote:

> I'm trying to populate a RowSet from a ResultSet, but have been
> getting a nice little error:  "Invalid column display size. Cannot be
> less than zero".  I checked the archives, and noticed that somebody
> else reported this in February. They suggested changing the source to
> set it to return 0 in certain methods instead of -1.  I attempted to
> do the same, rebuild the archive, and tried again.  Nada.  Still having the
same problem.
> Is there something that I'm missing?
>

You have not shown what you have done and what error you are still getting, so
no one can really tell what the problem is.

The original problem is still in Sun's hands as Amit Handa said he'd ask around
at Sun to see if this is their problem or ours.

Kris Jurka



---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)




pgsql-jdbc by date:

Previous
From: "Michael Laccetti"
Date:
Subject: Re: RowSet error
Next
From: Oliver Jowett
Date:
Subject: Re: Calling stored functions in executeBatch