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