Hi, I think what happens is that in your getCalToGMT0 method you both change the timezone to UTC (which is probably what you want) but also the time.
I would try using:
Calendar c = Calendar.getInstance();
... set fields accordingly, if needed ...
c.setTimeZone(TimeZone.getTimeZone("UTC"));
But the Calendar methods are a bit dangerous, see also
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4827490
Regards,
Thomas
