Re: TimestampUtils.loadCalendar failes for interval type I would suggest you send a bug note to Hibernate. An inteval is not a
timestamp, nor can it be construed as such.
Dave
On 8-Sep-05, at 7:26 AM, Gil G wrote:
> Hi,
>
> I've executed following query:
> select t.date-t.date2 from table as t
>
> The query should return a single row of type interval. Indeed,
> resultSet.getObject(1) returns a PGInterval instance with the
> correct value (the returned interval is 2 days and several hours).
>
> When I call resultSet.getString(1) the string representation of
> interval is "2 days 14:08:55.8246".
> The problem arises when I call resultSet.getTimestamp(1).
> As I saw in org.postgresql.jdbc2.TimestampUtils.loadCalendar
> (GregorianCalendar cal, String s, String type) it fails to parse
> correctly
> the string, which is returned by resultSet.getString(1) call. since
> it expects only the "14:08:55.8246" part and does not expect the "2
> days " part. Please note that in case the interval between two
> dates is smaller than 24 hours everything works correctly.
>
> This is important since, generic products such as Hibernate that
> work over different jdbc drivers, refer to the interval data type
> as a java.sql.Timestamp object and call getTimestamp(int) method
> on the resultset to get the instance.
>
> Thanks,
> Gil |