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

Rod*_*own 6 gwt timezone date

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

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

谢谢

Igo*_*mer 3

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

String pseudoServerTime = DateTimeFormat.getFullTimeFormat().format(new Date(), TimeZone.createTimeZone(TimeZoneConstants.europeWarsaw());
Run Code Online (Sandbox Code Playgroud)

您可以在某处对时区字符串/对象进行硬编码public static final,以便在移动/更改服务器时可以轻松更改它(并且 GWT 编译器将内联此内容,因此不会造成性能损失)。