Обсуждение: RowSet error

Поиск
Список
Период
Сортировка

RowSet error

От
"Michael Laccetti"
Дата:
Note: I sent this a few days ago, but no response.  I figure that somebody must
have had this problem, so any help with be mighty appreciated.

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?



Re: RowSet error

От
Kris Jurka
Дата:

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

Re: RowSet error

От
"Michael Laccetti"
Дата:
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



Re: RowSet error

От
"Michael Laccetti"
Дата:
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)