[Pljava-dev] Has ResultSet.getDate() correct handling DayLight saving time?

Nic Nofamily carapuz at gmail.com
Thu Mar 30 20:04:42 UTC 2006


Hi all!
I have a little trouble with my pljava functions last night:(
--------------
here config:
Java HotSpot(TM) Server VM (build 1.5.0_06-b05, mixed mode)
Debian Sarge
pljava 1.2.0 compiled from source
postgresql 8.1.3 installed from debian backports
---------------
ResultSet.getDate for  to_date('01/11/2005','DD/MM/YYYY') returns
31/10/2005 for pljava jdbc driver
the same java code using postgresql jdbc driver works  fine:(

I discovered that wrong result depend on DayLight Saving time
and i wrote workaround on ObjectResultSet.getDate()

	public Date getDate(int columnIndex)
	throws SQLException
	{
		Date d = (Date)this.getValue(columnIndex,Date.class);
		if(!java.util.TimeZone.getDefault().inDaylightTime(d)){
                    d = new
java.sql.Date(d.getTime()+java.util.TimeZone.getDefault().getDSTSavings());
                }
		return d;
	}

now my pljava code works good, but that's wrong way:(
What are you comments, developers?:)
PS: sorry for my English,I am Russian:)



More information about the Pljava-dev mailing list