我正在使用 f:convertDateTime 来格式化数据表中的 dateTime。我在 web.xml 中设置了以下上下文参数,以将时区显式设置为系统时区:
<context-param>
<param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
<param-value>true</param-value>
</context-param>
出于某种原因,我的 convertDateTime 总是得到“GMT”,但正确的时区是“GMT-03:00”。我在测试课上试过这个来查看我的时区:
System.out.println(TimeZone.getDefault().getDisplayName());
这给了我“GMT-03:00”。
我正在使用 JSF 1.2 和 JBoss Seam 2.2,调用 jboss-seam DateTimeConverter 进行此转换,我不知道这是否是问题所在。