Как я заставляю GWT DateTimeFormat отображать использование сервера TimeZone, а не клиент?

Я пытаюсь отобразиться (java.util). Клиентская дата, и это продолжает использовать часовой пояс браузера, приводя к другой дате, видимой в зависимости от того, где Вы просматриваете страницу.

Как я заставляю Средство форматирования (DateTimeFormat) отображать дату с помощью часового пояса сервера, а не пользователя?

Спасибо

6
задан RodeoClown 3 February 2010 в 01:59
поделиться

2 ответа

«Самое простое» решение (не требующее связи с сервером) - просто заставить DateTimeFormat использовать конкретный часовой пояс (тот, в котором находится ваш сервер), например:

String pseudoServerTime = DateTimeFormat.getFullTimeFormat().format(new Date(), TimeZone.createTimeZone(TimeZoneConstants.europeWarsaw());

Вы можете жестко закодировать строку / объект часового пояса где-нибудь как public static final , чтобы его можно было легко изменить, если вы перемещаете / меняете серверы ( и компилятор GWT встроит это, поэтому нет потери производительности).

3
ответ дан 17 December 2019 в 07:04
поделиться

Будет ли изменена дата на клиенте? Если нет, выполните форматирование на сервере и просто отправьте строковое значение. Последняя вещь. Кажется, есть некоторые проблемы с датами на стороне клиента в GWT. См. http://blog.gerardin.info/archives/674

1
ответ дан 17 December 2019 в 07:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: