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