2013-03-12 49 views
1

我在我的數據庫中有datetime。當我嘗試顯示它時,「小時」是錯誤的(6小時以上)。f:convertDateTime顯示錯誤的小時

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

web.xml嘗試粘貼這些行:

<context-param> 
    <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name> 
    <param-value>true</param-value> 
</context-param> 
2

您所面臨的問題時區...

我解決了這個問題,從here得到我的時區和改變F:convertDateTime這樣的:

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

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

這不是花哨,但它的作品。

更好的解決方案,你可以通過將此代碼添加到德web.xml中找到它here

<context-param> 
    <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name> 
    <param-value>true</param-value> 
</context-param>