1

我的数据库中有日期时间。当我尝试显示它时,“小时”是错误的(多 6 小时)。

DB          2013-03-12 10:05:49
Display     2013/03/12 16:05:49

我正在使用 primefaces,这是代码:

<p:column id="fecha" headerText="Fecha" style="text-align: center">
  <h:outputText value="#{con.fecha}" >
    <f:convertDateTime pattern="yyyy/MM/dd HH:mm:ss"  />
  </h:outputText>
</p:column>

我尝试使用该模式HH,但它似乎不起作用。

4

2 回答 2

7

在您web.xml尝试粘贴这些行时:

<context-param>
    <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
    <param-value>true</param-value>
</context-param>
于 2013-03-12T16:52:51.440 回答
2

您正面临时区问题...

我解决了这个问题,从这里获取我的 timeZone并像这样更改 f:convertDateTime:

<f:convertDateTime pattern="yyyy/MM/dd HH:mm:ss"  />

<f:convertDateTime pattern="yyyy/MM/dd HH:mm:ss" timeZone="America/Montevideo" />

这并不花哨,但它有效。

通过将此代码添加到 de web.xml中,您可以在此处找到更好的解决方案

<context-param>
    <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
    <param-value>true</param-value>
</context-param>
于 2015-05-05T13:37:07.480 回答