xPages 在设计更新后不起作用

xPages don't work after design update

  1. 加载任何 xPage
  2. 刷新数据库设计
  3. 通过 F5 或 Ctrl+F5 重新加载 xPage。

然后几乎所有功能都停止工作而没有任何错误。例如。如果您单击按钮或菜单项,什么也不会发生。重新启动网络浏览器后,某些功能会恢复,但有些功能仍然无法使用。清理浏览器的缓存后,几乎 90% UI 开始工作,但有些仍然需要重新加载页面几次。是否有任何 xPage 应用程序属性或 Domino 属性可以调整以解决该问题并使 xPage 应用程序即使在设计刷新后也能顺利运行

使用 8.5.3 FP1 刷新时,设计刷新未重新加载自定义 Java 类。我相信,这是在 FP2 中修复的。但这听起来不像是这里的问题所在。

Design Refresh 不会重新加载 jar 文件。这需要向控制台发出 "restart task http"。 ("tell http restart" 没有正确地重新加载 XPages 需要的所有内容。)

如果您的应用程序使用单一副本 XPage 设计来保存其 XPage 设计,那么在您向服务器发出 "restart task http" 之前,它也不会更新。该设计似乎由服务器缓存以获得更好的性能,但刷新 SCXD 数据库的设计不会重新加载该设计。不清楚这是否是您的情况。

XPiNC 也可能不会立即更新,但我没有尝试过。那里的运行时基本上在Notes Client本身,所以我可以理解它不会更新。

否则,我会重复 Thomas 的经验,我没有发现任何其他问题(而且我的应用程序大量使用 Java)。我不需要在设计刷新后清理应用程序。现有的浏览器会话将有部分刷新调用的问题,我希望如此。但是刷新页面会使所有功能正常工作。

我预计有两种情况会出现问题。

第一种情况是,如果您在应用程序所需的 sessionScope 或 applicationScope 变量中存储任何内容,但您的代码仅在特定页面上加载这些内容。如果您刷新设计,范围将被转储,因此在您转到特定页面之前不会重新加载。通常我将这样的初始化代码放在我的布局自定义控件上,因此如果它被设计刷新转储,页面重新加载将始终初始化它。

第二种情况是,如果另一个用户访问该应用程序并打开自动构建,这可能会导致应用程序在您没有意识到的情况下被重建。不过,这听起来不像是发生在你身上的事情。