From owner-freebsd-java@FreeBSD.ORG Tue May 30 06:20:02 2006 Return-Path: X-Original-To: freebsd-java@freebsd.org Delivered-To: freebsd-java@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 76A5416A41F for ; Tue, 30 May 2006 06:20:02 +0000 (UTC) (envelope-from past@ebs.gr) Received: from fly.ebs.gr (fly.ebs.gr [83.171.239.113]) by mx1.FreeBSD.org (Postfix) with ESMTP id 845F043D46 for ; Tue, 30 May 2006 06:20:00 +0000 (GMT) (envelope-from past@ebs.gr) Received: from ebs.gr (root@hal.ebs.gr [10.1.1.2]) by fly.ebs.gr (8.12.9p1/8.12.9) with ESMTP id k4U6JvGP040301; Tue, 30 May 2006 09:19:57 +0300 (EEST) (envelope-from past@ebs.gr) Received: from [10.1.1.200] (pptp.ebs.gr [10.1.1.200]) by ebs.gr (8.13.3/8.13.3) with ESMTP id k4U6JsHg059170; Tue, 30 May 2006 09:19:56 +0300 (EEST) (envelope-from past@ebs.gr) Received: from 127.0.0.1 (AVG SMTP 7.1.394 [268.7.3/350]); Tue, 30 May 2006 09:19:53 +0300 Message-ID: <447BE408.8040504@ebs.gr> Date: Tue, 30 May 2006 09:19:52 +0300 From: Panagiotis Astithas Organization: EBS Ltd. User-Agent: Thunderbird 1.5.0.2 (Windows/20060308) MIME-Version: 1.0 To: Heiko Weber References: <200605291720.19793.java@wecos.de> In-Reply-To: <200605291720.19793.java@wecos.de> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-java@freebsd.org Subject: Re: Calendar Question - maybe bug ? X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 May 2006 06:20:02 -0000 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