|
Duplicate :
|
|
|
Relates :
|
|
|
Relates :
|
FULL PRODUCT VERSION :
java version "1.5.0_03"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_03-b07)
Java HotSpot(TM) Client VM (build 1.5.0_03-b07, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Windows XP Service Pack 2
A DESCRIPTION OF THE PROBLEM :
Java determinates incorrect time zone in Asia/Irkutsk. Java supposes that it is Asia/Ulaanbaatar. Asia/Irkutsk use winter/summer time, Asia/Ulaanbaatar not. So, System.out.println(Calendar.getInstance().getTime()); prints wrong time when there is a summer time in Asia/Irkutsk. It prints one hour earlier time.
For example, it prints Sat May 07 09:53:12 ULAT 2005 when time is 10:53.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Set computer locale GMT+8, Ulaanbaatar/Irkutsk, use summer time; and date, when summer time is used, for example now (7th May) in Windows Control Panel. Execute System.out.println(Calendar.getInstance().getTime()); . It will print wrong time.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Valid system time.
ACTUAL -
Wrong system time.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
System.out.println(Calendar.getInstance().getTime());
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Set time zone to Asia/Irkutsk manually on program start. But it is not a good solution.
###@###.### 2005-05-24 11:57:10 GMT
|