Обсуждение: getColumnClassName() and getObject() types differ for smallint

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

getColumnClassName() and getObject() types differ for smallint

От
"Karl von Randow"
Дата:
Hi all,

I have encountered what I believe is a bug in the Postgres JDBC drivers 8.0
build 312 and 8.1dev build 401 in regards to the class returned for smallint
columns using getObject() compared to the class indicated by the
getColumnClassName() method.

For my smallint column:
ResultSetMetaData.getColumnClassName() returns java.lang.Short
ResultSet.getObject().getClass().getName() returns java.lang.Integer

I have tested and confirmed this behaviour in driver 8.0 312 and 8.1dev 401
against my PostgreSQL 7.3.2 installation using Java 1.5.0_04-b05 on Linux. I
have not had an opportunity to test against a different version of
PostgreSQL.

The problem does not exist in the 7.4 build 216 driver; it returns
java.lang.Short for both.

Kind regards,
Karl


Re: getColumnClassName() and getObject() types differ for

От
Oliver Jowett
Дата:
Karl von Randow wrote:

> For my smallint column:
> ResultSetMetaData.getColumnClassName() returns java.lang.Short

That sounds like a bug.

> ResultSet.getObject().getClass().getName() returns java.lang.Integer

This is the correct result per the JDBC spec.

-O

Re: getColumnClassName() and getObject() types differ for

От
Kris Jurka
Дата:
Oliver Jowett wrote:
> Karl von Randow wrote:
>
>>For my smallint column:
>>ResultSetMetaData.getColumnClassName() returns java.lang.Short
>
> That sounds like a bug.
>

Fixed in 8.0 and 8.1 cvs.

Kris Jurka