Calendar Question - maybe bug ?

Panagiotis Astithas past at ebs.gr
Mon May 29 23:20:02 PDT 2006


Heiko Weber wrote:
> Hi !
> 
> I've a problem with GregorianCalendar, which returns different weeks (in year) 
> on FreeBSD 6.1, java version is
> 
> # java -version
> Java HotSpot(TM) Server VM (build 1.5.0-p2-heiko_03_jan_2006_23_51, mixed 
> mode)
> 
> Test program (A.java):
> 
> import java.util.Calendar;
> import java.util.GregorianCalendar;
> 
> public class A {
> public static int weeksInYear(int year) {
>                 Calendar cal = GregorianCalendar.getInstance();
> 
>                 cal.set(year, 11, 31);
> 
>                 return cal.get(Calendar.WEEK_OF_YEAR) == 53 ? 53 : 52;
>         }
> 
>         public static void main(String args[]) {
>                 for (int i = 1990; i <= 2006; i++)
>                         System.out.println("Weeks in Year " + i + " = " + 
> weeksInYear(i));
>         }
> }
> 
> Output on a Linux or Windows JRE is:
> 
> Weeks in Year 1990 = 52
> Weeks in Year 1991 = 52
> Weeks in Year 1992 = 53
> Weeks in Year 1993 = 52
> Weeks in Year 1994 = 52
> Weeks in Year 1995 = 52
> Weeks in Year 1996 = 52
> Weeks in Year 1997 = 52
> Weeks in Year 1998 = 53
> Weeks in Year 1999 = 52
> Weeks in Year 2000 = 52
> Weeks in Year 2001 = 52
> Weeks in Year 2002 = 52
> Weeks in Year 2003 = 52
> Weeks in Year 2004 = 53
> Weeks in Year 2005 = 52
> Weeks in Year 2006 = 52
> 
> Output on FreeBSD is:
> 
> Weeks in Year 1990 = 52
> Weeks in Year 1991 = 52
> Weeks in Year 1992 = 52
> Weeks in Year 1993 = 52
> Weeks in Year 1994 = 53
> Weeks in Year 1995 = 52
> Weeks in Year 1996 = 52
> Weeks in Year 1997 = 52
> Weeks in Year 1998 = 52
> Weeks in Year 1999 = 52
> Weeks in Year 2000 = 52
> Weeks in Year 2001 = 52
> Weeks in Year 2002 = 52
> Weeks in Year 2003 = 52
> Weeks in Year 2004 = 52
> Weeks in Year 2005 = 53
> Weeks in Year 2006 = 52
> 
> Is this my fault or would it help to update the FreeBSD JRE ? Or is the 
> java-Calendar-System build up on some local (changeable) settings ?
> 
> Thanks for any help or hint.


I can't replicate this here on either diablo-jdk15 or jdk15 patchset 2 
(as yours). Is your systems time/timezone/etc. correct?

Cheers,

Panagiotis



More information about the freebsd-java mailing list