Thank you Richard. But try this and you will see what I mean:
TimeZone tz = Calendar.getInstance().getTimeZone();
System.out.println(tz.getDisplayName());
System.out.println(tz.getID());
tz = Calendar.getInstance().getTimeZone(); // breakpoint here, stop, change the system time zone and then continue running
System.out.println(tz.getDisplayName());
System.out.println(tz.getID());
The time zone is set at the beginning of the current JVM process. It is subsequently detached from the system time zone and it sadly seems that there is no orthodox way to reattach it...
Bogdan Rechi.