harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Richard Liang <richard.lian...@gmail.com>
Subject Re: [classlib][compatiblity](Re: [jira] Created: (HARMONY-1241) [classlib][util] unexpected IllegalArgumentException for java.util.SimpleTimeZone(13 params))
Date Tue, 22 Aug 2006 05:39:28 GMT


Paulex Yang wrote:
> Seems both Harmony and RI's behavior violates spec, which says:
>
> "The mode specifies either wall_time or standard_time or UTC_time." 
> and |"IAE <cid:part1.04040504.00010409@gmail.com>| - if the month, 
> day, dayOfWeek, time more, or time parameters are out of range for the 
> start or end rule, or if a time mode value is invalid."
>
> IIUC, it means only the three constants wall_time(0), standard_time(1) 
> and UTC_time(2) are valid values for startTimeMode/endTimeMode, but 
> interesting facts are: RI accepts any values from Integer.MIN_VALUE to 
> MAX_VALUE, while Harmony accepts 1-4 and throws exception for others. 
> Further, seems RI doesn't validate some other parameters as spec,too 
> (startDayOfWeek or so).
>
> I suggest to follow RI in this case, but like to listen to others.
>
+1 to follow RI.
>
>
> Vladimir Ivanov (JIRA) wrote:
>> [classlib][util] unexpected IllegalArgumentException for 
>> java.util.SimpleTimeZone(13 params)
>> --------------------------------------------------------------------------------------------

>>
>>
>>                  Key: HARMONY-1241
>>                  URL: http://issues.apache.org/jira/browse/HARMONY-1241
>>              Project: Harmony
>>           Issue Type: Bug
>>           Components: Classlib
>>             Reporter: Vladimir Ivanov
>>
>>
>> The method java.util.SimpleTimeZone.SimpleTimeZone(int rawOffset, 
>> String ID, int startMonth, int startDay, int startDayOfWeek, int 
>> startTime, int startTimeMode, int endMonth, int endDay, int 
>> endDayOfWeek, int endTime, int endTimeMode, int dstSavings) for 
>> correct parameters throws IllegalArgumentException on Harmony.
>>
>> ======================= test.java =========================
>> import java.util.SimpleTimeZone;
>> import java.util.TimeZone;
>> import java.util.Calendar;
>>
>> public class test {
>>     public static void main(String args[]) {
>>         System.out.println("DST_OFFSET = " + Calendar.DST_OFFSET);
>>         System.out.println("res = " +  new SimpleTimeZone(
>>                   TimeZone.LONG,
>>                   "Europe/Paris",
>>                   SimpleTimeZone.STANDARD_TIME,
>>                   SimpleTimeZone.STANDARD_TIME,
>>                   SimpleTimeZone.UTC_TIME,
>>                   SimpleTimeZone.WALL_TIME,
>>                   SimpleTimeZone.WALL_TIME,
>>                   TimeZone.SHORT,
>>                   SimpleTimeZone.STANDARD_TIME,
>>                   TimeZone.LONG,
>>                   SimpleTimeZone.UTC_TIME,
>>                   SimpleTimeZone.STANDARD_TIME,
>>                   TimeZone.LONG));
>>     }
>> }
>> =======================================================
>>
>> Output:
>> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . 
>> -showversion test
>> java version "1.5.0"
>> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
>> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, 
>> R25.0.0-75, GC: System optimized over throughput (initial strategy 
>> singleparpar))
>>
>> DST_OFFSET = 16
>> res = 
>> java.util.SimpleTimeZone[id=Europe/Paris,offset=1,dstSavings=1,useDaylight=true,startYear=0,startMode=2,startMonth=1,startDay=1,startDayOfWeek=2

>>
>> ,startTime=0,startTimeMode=0,endMode=2,endMonth=0,endDay=1,endDayOfWeek=1,endTime=2,endTimeMode=1]

>>
>>
>> C:\tmp\tmp17>C:\harmony\classlib1.5\deploy\jdk\jre\bin\java.exe -cp . 
>> -showversion test
>> java version 1.5 (subset)
>>
>> (c) Copyright 1991, 2006 The Apache Software Foundation or its 
>> licensors, as applicable.
>> DST_OFFSET = 16
>> Exception in thread "main" java.lang.IllegalArgumentException: DST 
>> offset: 0
>>         at java.util.SimpleTimeZone.<init>(SimpleTimeZone.java:216)
>>         at test.main(test.java:8)
>>
>>
>>
>>   
>
>

-- 
Richard Liang
China Software Development Lab, IBM 



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message