如何使用服务器TimeZone而不是客户端显示GWT DateTimeFormat?

时间:2010-02-03 01:59:51

标签: gwt date timezone

我正在尝试显示(java.util。)Date客户端,并且它会继续使用浏览器的时区,导致根据您查看页面的位置显示不同的日期。

如何让Formatter(DateTimeFormat)使用服务器的时区而不是用户显示日期?

由于

2 个答案:

答案 0 :(得分:3)

“最简单”的解决方案(不需要与服务器进行任何通信的解决方案)只是强制DateTimeFormat使用特定的时区(服务器所在的时区),如下所示:

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

您可以将时区字符串/对象硬编码为public static final,以便可以轻松更改,如果您移动/更改服务器(并且GWT编译器将内联此内容,因此不会影响性能)。

答案 1 :(得分:1)

是否会在客户端上修改日期?如果不在服务器上执行格式,只需发送一个字符串值。最后一件事。在GWT中客户端的日期似乎存在一些问题。请参阅http://blog.gerardin.info/archives/674