Xpages文件改变文件模式?

2023-12-08

我遇到了一件奇怪的事情;不幸的是,像往常一样,我无法发布代码,因此我正在描述问题,以防有人可以提出可能的原因。

我有一个 xpage,其中包含自定义控件;自定义控件通过链接处理文档锁定和更改为编辑/只读模式。文档锁定是通过基于 UNID 设置 applicationScope 变量来完成的。为了使其对系统上的其他用户更加友好,我定期在页面上运行一个功能来检查文档是否被锁定,并适当更新链接/标签/工具提示(例如,如果被其他用户锁定,则“编辑" 按钮被禁用;当锁定被释放时,它会重新启用)。这是通过标准、简单的基于 dojo 的 ajax 调用来调用“xagent”来完成的。

由于某种原因,系统的行为在 45 秒到一分钟后变得不稳定。我每隔十​​秒左右检查一次锁定状态,因此第一次调用时不会发生这种情况。我正在显示与该文档关联的记录列表;每个记录都是重复的一行。当我第一次进入编辑模式时,控件全部按应有的方式显示,即可编辑。如果用户使用组合框更改特定值,它将通过部分刷新更新整行。当事情变得不稳定时,我注意到该行开始以只读模式刷新,这表明文档正在更改编辑模式。我唯一一次故意更改编辑模式是按下“取消”或“保存”按钮。 (锁定机制本身与编辑模式没有任何关系。)

看起来我所做的 ajax 调用确实是这个问题的根源。但我已经将 xagent 和客户端代码精简到几乎没有,而且它仍然在发生。我看不出是什么导致了这种行为。有人可以大胆猜测一下吗?谢谢....


也许检查服务器日志文件是否有警告,例如:

警告 CLFAD####W:状态数据不可用于 /page,因为在缓存中未找到控制树。

如果您看到这些警告,则可能是服务器无法再在缓存中找到当前的 XPage 页面实例。在这种情况下,页面将恢复到初始状态,就像页面首次打开时一样。这可能就是文档进入只读模式的原因。

当 xsp.persistence.mode=basic 时,服务器端页面实例的会话缓存仅保存 4 个页面,或者当 xsp.persistence.mode=file 或 fileex 时保存 16 个实例。

如果您加载 4 个 xagent 页面实例,那么这将填满缓存,并且它将无法再找到您正在查看的当前 XPage 的页面实例。因此,XPage 将停止执行服务器端操作,并且部分刷新将始终显示页面该区域的初始状态。

为了避免这个问题,在 xagent 页面中,您可以在 xp:view 标记上设置 viewState="nostate",这样就不会为 xagent 页面保存页面实例,如下所述:https://tobysamples.wordpress.com/2014/12/11/no-state-no-problem/

或者,您可以为 xagent 创建并重用一个页面实例,因此只创建一个。也就是说,在第一次调用 XAgent 时,让 xagent 返回 xagent 页面实例的 $$viewid 值 (#{javascript:view.getUniqueViewId()}),然后在对 xagent 的后续请求中使用该 $$请求中的 viewid,以恢复现有的 xagent 页面实例,而不是创建将填充缓存的新实例。所以后续的xagent请求将是这样的:

/myApp.nsf/xagent1.xsp?$$viewid=!aaaaaaaa!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Xpages文件改变文件模式? 的相关文章

  • 我希望我的 Domino Servlet 获得经过身份验证的用户会话

    这似乎是一个非常基本的问题 在 Domino 上托管的正在运行的 Servlet 中 我想要访问 Domino 资源 我已经使用 IBM Notes 和 Domino 的非常精细的安全性明智地保护了这些资源 我希望 Servlet 能够向
  • 打开时仅展开 viewPanel 中的一些分类列

    我正在使用 ViewPanel 来显示分类视图 该视图有 4 列类别 总计还有 3 个附加列 我想打开此视图 以便展开前 3 个分类列 并折叠第 4 个分类列 是否有某种类型的 SSJS CSJS 我可以添加到可以执行此操作的视图中 在 v
  • 单击按钮即可 Xpages 更多字段(无限制)

    我想从 x 开始 xpage 应用程序上的字段 在我的应用程序中 我有一对文本数据字段和数字数据字段 比如说 10 对 然后当用户单击 更多字段 时 我希望动态显示更多对 而无需完整的字段刷新页面 但想要无限制 字段 只要页面不崩溃 然后我
  • 单击视图中的计算页面 URL 时打开空白页面(新页面)

    我有以下 viewPanel 我想当用户单击计算出的页面网址时打开一个新页面 我只是似乎不明白这一点
  • 如何在 Lotus Domino 上设置 CORS?

    我尝试通过跨域请求通过 REST 与 Domino 进行通信 但遇到了问题 我已经设置了一个 Internet 站点文档 其中包含 IP 地址 本地主机和作为主机名列出的服务器名称 该网站正在按照我在该网站上设置的重定向规则运行 我还使用以
  • 尝试在移动控件视图中“加载更多”时引发 NoAccessSignal 异常

    我有一个 XPages 应用程序在 8 5 3 UP1 上运行 带有移动控制界面 它在我的开发和测试服务器上运行良好 但在生产中 当用户单击视图控件中的 加载更多 按钮时 我们会看到以下间歇性错误 2012 年 5 月 10 日 4 12
  • 主题不适用于按钮

    我开始玩主题 我能够创建 CSS 并将 CSS 关联到各种表格元素 工作正常 现在我尝试用按钮做同样的事情 但这似乎不起作用 如果我将样式类应用于按钮 那么它就可以工作
  • 以编程方式获取 XPage 按钮的 clientId

    当我在表单上创建提交按钮时 会在 HTML 中生成以下内容 XSP attachEvent view id1 id2 id38 id55 view id1 id2 id38 button1 onclick null true 2 view
  • 是否可以在 Java 代理中使用 WEB-INF 目录中的 Java 类

    目前我正忙于一个全新的 XPage 项目 我使用 Java 和托管 Bean 来访问数据 到目前为止 我不必使用 Lotusscript 最后一件事是创建一个计划代理来执行一些后端工作 Java 类中已经存在一些逻辑 这些类位于 WEB I
  • Xpages:让 FullCalendar 与引导主题一起使用

    Per 的回答是解决方案的重要组成部分 为了完整起见 这是我最终要做的 首先 我必须解决 Per 提到的 AMD 问题 然后我必须修改我的 Xpage 以确保以正确的顺序加载正确的库 其中一些是通过反复试验完成的 我必须将资源聚合设置设置为
  • 如何从phonegap获取图片到远程XPage?

    我在 iPad 上构建了版本 1 6 的 Phonegap 应用程序 将 ulr 设置为 Domino 服务器上的 XPage 现在我的问题 当我在 iPhone 上拍照并将其上传到我的 XPage 时 使用该功能takePicture 返
  • java.lang.ClassCastException: someClass 与 someClass 不兼容的含义

    我在 XPage 应用程序中偶尔遇到异常 java lang ClassCastException someClass incompatible with someClass 两个提到的类是相同的 都是用作会话bean的类 我无法用谷歌搜索
  • 当我从扩展库对话框保存文档时,某些值是空白的

    使用8 5 3 UP1 当我从对话框保存文档时 某些字段不会被填充 如果我从 xpage 中保存文档 它会很好地保存这些字段 下面用一个简单的例子来说明这个问题
  • 多次部分刷新的运行时错误

    Per 帮助我让一个 XSP partialRefreshGet 开始工作 这对我来说效果很好 不 谢谢 现在我需要多次刷新才能工作 XSP partialRefreshGet txtRateType onComplete function
  • 将自定义控件中的编辑框动态绑定到托管 bean

    我读过许多关于在自定义控件中动态绑定字段的优秀帖子和文章 但它们都假设了文档数据源 我想允许托管 bean 数据源的可能性 我尝试将属性类型设置为com ibm xsp model DataSource or com ibm xsp ext
  • XPages - onkeypress 事件未正确触发点击

    我使用 Xpages 自定义控件创建了一个搜索字段 id searchField 和一个搜索按钮 id searchButton 我在搜索字段上添加了一个 onkeypress 事件 这样它将触发对 searchButton 的单击 然后
  • 如何使用xPages上传控件将上传的文件存储到本地文件系统?

    如何使用xPages上传控件将上传的文件存储到本地磁盘 我的 xPages 上只有一个带有文本字段和 fileUpload 控件的简单表单 没有与文档的绑定 因此我访问 xpages 组件以在提交时获取它们的值 如何从我的 java 代码访
  • 我可以在 dojo 手风琴中打开特定条目吗?

    我想在应用程序的左侧导航中放置链接 打开 xPage 并选择特定的手风琴条目 不知道该怎么做 有什么想法吗 我在这里假设您想以编程方式执行此操作 看看这个答案 https stackoverflow com a 1190455 104799
  • xpages 部分 - 完整搜索

    我看到 IBM 的一个很棒的教程 解释了在视图面板中创建搜索模数 视图面板中的代码 search属性 我调整 Field txt autor sessionScope searchAutor 我是否有机会修改代码 以便它也提供部分字符串匹配
  • 复杂的 Xpage 部分刷新需要很长时间

    我有一个复杂的 xpage 其中有很多嵌套的自定义控件 每次我执行部分刷新都需要超过 4 秒才能完成 如果我消除了复杂性 它就可以正常工作并且速度如您所愿 我对这个复杂的 Xpage 进行了测试 即使使用部分执行模式 这个简单的测试也需要

随机推荐

  • PHP 字符串转浮点数

    我对 PHP 一点也不熟悉 有一个简单的问题 我有2个变量pricePerUnit and InvoicedUnits 以下是将这些设置为值的代码 InvoicedUnits string InvoiceLineItem gt Invoic
  • 在 WPF 中将图像添加到固定页面

    我希望能够使用其他 UIElements 打印图像 我有一个固定页面实例并尝试像这样添加图像 Basic printing stuff var printDialog new PrintDialog var fixedDocument ne
  • Firefox 有时渲染 HTML 不正确

    我开发了一个 css 菜单 在我的测试中它在所有浏览器中运行良好 纯 html css 当我们将代码引入在 cakePHP 上运行的开发环境中时 我们开始在 Firefox 3 5 2 中有时看到菜单错误 在其他浏览器中不会发生这种情况 当
  • 在 ASP.NET 中查找控件的更好方法

    我有一个复杂的 asp net 表单 在一个表单中甚至有 50 到 60 个字段 就像这样Multiview 在 MultiView 里面我有一个GridView 在 GridView 里面我有几个CheckBoxes 目前我正在使用链接F
  • python-memcache 使用一致性哈希吗?

    我正在使用 python memcache 库 我想知道是否有人知道从 1 44 开始该客户端是否使用一致哈希 如果您需要类似的东西 您可能会感兴趣哈希环
  • ImageMagick 裁剪大图像

    我正在尝试从一个巨大的图像 例如 40000x40000 创建图块 我在网上找到了一个 imagemagick 的脚本 他裁剪了瓷砖 它在像 10000x5000 这样的小图像上工作得很好 一旦我变得更大 它最终会使用大量内存并且计算机死机
  • Mongoose 删除(拉取)数组中的文档,不适用于 ObjectID

    我有以下猫鼬模式 user userId myId connections dateConnectedUnix 1334567891 isActive true dateConnectedUnix 1334567893 isActive f
  • 如何在IIS7中为ASP.NET创建虚拟目录?

    我有一个 ASP NET 网站 我的机器有 IIS7 在 Windows Vista home premium 上运行 我希望局域网上的其他计算机可以看到它 我需要创建一个虚拟目录吗 如何在我的计算机上创建虚拟目录 我必须如何部署它才能让其
  • Azure 门户自定义磁贴 - Markdown 磁贴

    是否可以在天蓝色仪表板中显示自定义信息 我正在搜索如何在天蓝色仪表板中添加自定义内容 但没有找到任何内容 唯一接近的是允许显示 html 的 markdown 磁贴 考虑到这一点 经过大量挖掘后 我找到了解决方案 基本上 我们需要一个自定义
  • 零行 1000 列的矩阵?

    我正在看一个例子CvNormalBayesClassifier train其中输入 输出矩阵是一维向量 我正在查看的示例通过使用以下行创建具有 0 行和 1000 列的 cv Mat 矩阵来实现此目的 Mat trainingData 0
  • 如何区分/合并对部署项目文件的更改

    我目前正在使用 CVS 不是我的选择 并且有几个分支 我正在尝试合并两个分支 但部署项目文件存在冲突 如果不花费大量时间我就无法解决 对项目文件的微小更改会导致对该项目文件的巨大更改 我想这要归功于 GUID 更改 更改项目文件 获取干净的
  • 为什么“schtasks”不运行我的作业?

    我使用 Windows XP 安排了一个任务schtasks实用程序 但任务不运行 这是我在SchedLgU Txt日志档案 MySQL Automatic Backup job WampServer 10 2 2010 6 36 43 P
  • 为什么 main 被调用两次?

    我刚刚了解了 fork 据我了解 子进程从调用 fork 开始执行 否则 fork 会递归 然而在这段代码中 创意链接 int main printf d Common code1 n getpid if fork 0 printf d P
  • 将 Maven 中的多模块项目构建到一个 war 文件中

    我的问题以前曾被问过 我知道 但我认为我正在尝试做一些稍微不同的事情 其中 现有的答案是不合适的 本质上 我确实希望在 Eclipse 中拥有多个项目 这些项目将构建 最好 到一个最终的 WAR 文件中 理想情况下是这样的 root pom
  • MySQL REGEXP - 删除空格和非数字字符

    我想在 MySQL 数据库中搜索电话号码 目前有这个查询 SELECT person FROM people WHERE phone number RLIKE 123456789 它不会找到 123 456 789 12 456789 12
  • Validationengine jquery 无法正常本地化

    我正在使用validationEngine jquery 2 6 2 在 ASP NET 中进行验证 我想根据选择的语言 如英语或日语 加载其语言规则文件 我在应用程序中使用母版页 对此给出一些解决方案 您没有指定如何选择语言以及如何检查当
  • 有没有办法检查网页上正在使用或未使用哪些 CSS 样式?

    想要了解网页上当前使用哪些 CSS 样式 2022 年 7 月更新 Google 似乎已删除了下面的选项 1 审核选项卡已被删除 并且添加了 Lighthouse 和 Recorder Google Chrome 有两种方法来检查未使用的
  • 获取客户端的IP地址或获取连接到Android热点的客户端的信息(SSID)(网络共享后)

    我得到了 Wifi 网络共享程序 我在 Android 中得到了一个开放 非安全 热点 我喜欢查看连接到我的热点的客户端的详细信息 SSID 和 IP 地址 我使用了 SocketAddress socketid socket getLoc
  • 未知符号 __class_create (错误 0)

    这可能是一个愚蠢的问题 但我在网上查找了几个小时却找不到答案 我正在编写一个也创建字符设备的内核模块 它编译时没有错误和警告 但是当我尝试时sudo insmod my mod ko I get insmod error inserting
  • Xpages文件改变文件模式?

    我遇到了一件奇怪的事情 不幸的是 像往常一样 我无法发布代码 因此我正在描述问题 以防有人可以提出可能的原因 我有一个 xpage 其中包含自定义控件 自定义控件通过链接处理文档锁定和更改为编辑 只读模式 文档锁定是通过基于 UNID 设置