has anyone experienced such a strange reading from Java Calendar? The following snippet is written in Groovy (in Grails)

```
Calendar cal = GregorianCalendar.getInstance(TimeZone.getTimeZone("Asia/Singapore"))    
cal.setTime(this.timeEnd)
def endHour = cal.get(Calendar.HOUR_OF_DAY)
def endMinute = cal.get(Calendar.MINUTE)
println "cal gettime ${cal.getTime()} -timeend- ${this.timeEnd} end hour!!! $endHour && $endMinute"

```

And it gets me the following result

> 
> cal gettime Thu Jan 01 16:20:00 GMT+08:00 1970 -timeend- 1970-01-01
>  **16:20**:00.0 end hour!!! **15 && 50**
> 
> 
> 

while my date shows 16:20, retrieving the individual field gives me 15:50.
Anyone has any idea?

Thank you,
Robert