Разрешения Appengine для изменения часового пояса Joda по умолчанию - PullRequest
1 голос
/ 01 августа 2011

Я хочу изменить часовой пояс по умолчанию, чтобы он был нашим местным европейским / пражским - потому что я работаю с границами недели / дня.

Но звонит (я звоню в фильтре перед обработкой каждого запроса)

DateTimeZone.setDefault(DateTimeZone.forID(DateUtils.TIME_ZONE));

приводит к исключению разрешений. Я не думаю, что не могу получить новые разрешения на appengien, что мне делать?

TimeZone.setDefault (TimeZone.getTimeZone (DateUtils.TIME_ZONE)); работает нормально, хотя

1 Ответ

2 голосов
/ 01 августа 2011

Лично я бы просто не использовал часовой пояс по умолчанию где-либо. Всегда передавайте часовой пояс явно тому, кто будет его использовать. Это делает код более понятным, более устойчивым к изменению параметров системы по умолчанию, более устойчивым к необходимости использования двух часовых поясов в одном приложении, а также означает, что вам не нужно работать как изменить системное значение по умолчанию в AppEngine.

(Кроме того, в моем порту Joda Time для .NET, хотя мы поддерживаем выборку системного часового пояса, мы не используем его в качестве значения по умолчанию в любом месте в код - у вас есть , чтобы быть в явном виде о том, что вы хотите. Системное значение по умолчанию является неправильным выбором во многих ситуациях, это плохая идея использовать его по умолчанию IMO.)

...