在我的Web應用程序中,我使用Hibernate檢索數據並將其顯示在RichFaces數據表中。f:convertDateTime顯示錯誤日期
在我的MySQL表中有一個類型爲「date」的字段。當我將這個字段打印到Bean的日誌中時,它會顯示數據庫中的正確日期(例如2010-04-21)。但在豐富:dataTable中它顯示是這樣的:
10年4月20日
因此,有1天的差異!
我添加了「f:convertDateTime」轉換器,並將「type」屬性設置爲「both」以顯示時間。所以,現在它顯示:
10年4月20日晚上10:00:00
守則 「F:convertDateTime」 我用:
<f:convertDateTime locale="locale.US" type="both" dateStyle="short"/>
所以看起來像f:convertDateTime夢想了一段時間,因爲MySQL表中沒有時間信息!
我在做什麼錯了?我需要做什麼才能顯示正確的日期?
感謝湯姆
我試着設置的timeZone屬性,但現在時間說11 PM(因爲我的時區是GMT + 1)。看起來像默認我的時間到了UTC的晚上10點。 –
Tom
2010-04-22 10:24:42
,你有沒有嘗試其他的選擇? – Bozho 2010-04-25 05:55:15
是的。我把時區設置在ServletContextListener中,但結果(當然)是相同的。核心問題是將時間值發送到我的日期值(只有一個日期,沒有時間)。但是,我目前使用的解決方法是將時區設置爲GMT + 2,以便輸出爲4/21/10 00:00:00而不是4/20/10 22:00:00。但那不是一個理想的解決方案:) –
Tom
2010-04-29 06:07:58