Our system is configured with US/Eastern time and we have some scheduled tasks which must occur at specific Europe/London times. How can we do this and make sure our tasks fire correctly when daylight time changes take effect?
We use Quartz for scheduling. Currently we schedule tasks using SimpleTrigger, and not CronTrigger. The docs indicate that CronTrigger should work – but I think this assumes the scheduled time and the system time are on the same time zone.
CronTriggerwould indeed serve your purpose better, as you can use itssetTimeZonemethod to define which timezone will be used when resolving the trigger’sCronExpression. And no, the scheduled time and system time do not need to be on the same timezone. So, it should certainly work. (Of course, pay attention to the notes about daylight savings and crontriggers in the documentation you linked to.)