java - 在重复控件数据绑定(bind)和行属性之间共享计算

标签 java xpages

对于 xp:repeat 控件,我通过托管 bean 计算数据绑定(bind),托管 bean 中包含一个 java 对象列表。例如

employeeBean.loadList(key);
return employeeBean.profiles;

第一行将在 bean 上设置配置文件字段,该 bean 将包含一个带有配置文件对象的数组列表。

在某些情况下,客户不希望有分页器控件,因此我计算行数如下:

employeeBean.loadList(key);
var coll = employeeBean.profiles;
return coll.length;

我注意到我调用了同一个方法两次,而我在第一次调用中已经有了数据。

如何在数据绑定(bind)计算和行属性计算之间共享数据?

最佳答案

一切都取决于loadList() 的实现。使其成为多次调用的最佳选择,你就没事了。只需将您的列表保存在 bean 的某些内部属性中并使用缓存:

if (property == null) {
  property = getListData();
}
return property;

使用作用域,requestview 应该没问题。如果您的列表包含 Domino native 对象,请仅使用 request

关于java - 在重复控件数据绑定(bind)和行属性之间共享计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48928164/

相关文章:

http - 使 Domino HTTP session 无效/删除?

xpages - 去掉货币的小数部分

java - Runtime.exec 失败,没有任何异常/警告/错误代码

javascript - xPages 嵌套重复控件不显示任何内容

java - 对于不同的 java 版本,写入和读取 png 图像必须相同

java - 从另一个类添加到 ArrayList

html - 如何删除带有背景颜色的表格单元格分隔符

lotus-notes - 涉及日期字段的 FTSearch 让我感到困惑

java - 如何比较任何对象的两个实例并获取 "dirty"字段

java - 使用 java 和 ssh key 连接到远程服务器