我们在xpages中有一个关于日期的奇怪问题,Notesdocument我们包含一个日期字段,值只是一个日期,没有时间部分。
在xpage中,我指定将日期显示为日期/时间值。日期在网页上正确显示,但我们现在收到晚上(午夜时分)登录的用户的报告,并查看日期调整为一天。如果同一个人在白天登录,那么日期是正确的,所以这似乎只发生在午夜左右
我试图将我的客户端上的时钟更改为午夜左右,但这并没有重现它,所以我认为这是服务器问题。
多米诺骨牌服务器具有正确的日期/时间,我们正在使用最新版本的Domino
任何想法?
答案 0 :(得分:3)
我们最近遇到了同样的问题,我相信,找到了一个非常好的解决方案。
系统将纯日期视为UTC时区中的日期。日期值自动转换为服务器的时区。那么问题是如何防止转换?
此代码阻止转换:
<xp:this.converter>
<xp:convertDateTime
type="date"
ignoreUserTimeZone="true"
dateStyle="long"
timeZone="UTC">
</xp:convertDateTime>
</xp:this.converter>
注意“timeZone”属性。
答案 1 :(得分:2)
此问题与未在日期/时间字段中指定TimeZone有关。我们昨天遇到了这个问题。如果您没有指定TZ,它似乎假设UTC并将相应调整。包括时区,您的字段将停止错误调整。
答案 2 :(得分:0)
也许这与此有关? http://www-304.ibm.com/support/docview.wss?uid=swg21508734
我看过一些关于XPages日期和TimeZone问题的报告
答案 3 :(得分:0)
我怀疑你的Domino版本是8.5.3,因为有2个APAR,LO72278和LO67745,对8.5.3的类似问题。 Fixpack 3解决了这些问题。
根本原因是Lotus Notes允许您保存没有时间或区域的“日期”,并且Notes服务器具有默认时区设置来解释这些称为日期的不完整事物。 XPages没有遵循相同的规则,它的主Java希望知道你正在使用哪个区域,并向系统寻找一些线索,并且通常会在某个TZ中使用午夜来引用“日期”。 Stack Overflow上的“如何存储/表示日期”主题有一个完整的区域 - [datetime] - 因为语言和DBMS都有自己的方法。
好的遗留Notes专注于它的文章。 http://www-10.lotus.com/ldd/ddwiki.nsf/dx/05022009100728PMAGU5MB.htm
XPages关于它的文章 http://www-10.lotus.com/ldd/ddwiki.nsf/dx/XPagesTimeZones.htm
太糟糕了,他们并不完全在同一页面上,我认为每个版本都会更接近。