• Post Reply Bookmark Topic Watch Topic
  • New Topic

java date/timezone odd behavior?

gigi sheh
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

we have a webservices application that always takes the input of time in its UTC format as


and here is the code that parse the date into a java util Date object

private static final Pattern PATTERN = Pattern.compile(

Matcher m = PATTERN.matcher(dateString);
Calendar c = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
int hoff = 0, moff = 0, doff = -1;
if (m.group(9) != null) {
doff = m.group(9).equals("-") ? 1 : -1;
hoff = doff * (m.group(10) != null ? Integer.parseInt(m.group(10)) : 0);
moff = doff * (m.group(11) != null ? Integer.parseInt(m.group(11)) : 0);
c.set(Calendar.YEAR, Integer.parseInt(m.group(1)));
c.set(Calendar.MONTH, m.group(2) != null ? Integer.parseInt(m.group(2))-1 : 0);
c.set(Calendar.DATE, m.group(3) != null ? Integer.parseInt(m.group(3)) : 1);
c.set(Calendar.HOUR_OF_DAY, m.group(4) != null ? Integer.parseInt(m.group(4)) + hoff: 0);
c.set(Calendar.MINUTE, m.group(5) != null ? Integer.parseInt(m.group(5)) + moff: 0);
c.set(Calendar.SECOND, m.group(6) != null ? Integer.parseInt(m.group(6)) : 0);
c.set(Calendar.MILLISECOND, m.group(7) != null ? Integer.parseInt(m.group(7)) : 0);
return c.getTime();

Recently an odd thing was observed that as the application first starts, the returned date will be just correctly printed as
Thur Dec 06 00:00:00 EST 2012

since we are in EST timezone. Then after a while, after some execution, even without restart the application, the same date would be printed as
Thur Dec 06 05:00:00 UTC 2012

I have been digging down in the application and I don't see any changes that would reset the default timezone of our application. How could that happen? It has been a week since we started working on this and we are still clueless :-(

Also, is there anyway to make sure the application keeps using the system timezone as that would not be changing?

thanks a lot for any help/hints
Paul Clapham
Posts: 21862
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Gigi, welcome to the Ranch!

We prefer to have only one thread on a topic, it cuts down on the confusion when different people try to answer the different duplicates. So I'll close this one.

For those interested, here's the other thread: http://www.coderanch.com/t/595305/java/java/java-date-timezone-odd-behavior, please go there to reply.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!