You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

XPages Repeat控件:如何获取外部数据库文档的可访问URL

实现XPages Repeat控件中文档主题的跳转功能

要让Repeat里的主题文本跳转到外部数据库extdb.nsf的对应文档XPage,只需要给<xp:link>添加value属性,用XPages的API或手动构造正确的文档URL即可,以下是两种可靠的实现方式:

方法一:用XPages内置API生成URL(推荐)

这种方式会自动处理数据库路径、文档UNID等参数,避免硬编码出错,性能也更优:

修改你的<xp:link>标签,添加xp:this.value属性:

<xp:link escape="true" id="link1" styleClass="a">
  <xp:this.title><![CDATA[#{javascript:rowData.getDocument().getItemValueString("Subject")}]]></xp:this.title>
  <xp:this.text><![CDATA[#{javascript:rowData.getDocument().getItemValueString("Subject")}]]></xp:this.text>
  <xp:this.value><![CDATA[#{javascript:
    // 获取当前视图条目对应的文档
    var doc = rowData.getDocument();
    // 获取文档所属的外部数据库
    var targetDb = doc.getParentDatabase();
    // 替换成你实际用于显示文档的XPage名称(比如"document.xsp")
    var targetXPage = "document.xsp";
    // 调用内置API生成跳转URL
    return com.ibm.xsp.model.domino.DominoUtils.getDocumentUrl(targetDb, doc, targetXPage);
  }]]></xp:this.value>
</xp:link>

优化提示

如果你的视图已经包含文档UNID(大部分默认视图都有),可以不用打开文档,直接通过视图条目获取UNID,提升性能:
把rowData.getDocument()相关的代码替换成rowData.getUniversalID(),比如主题文本可以改成:

rowData.getColumnValue("Subject")

这样避免频繁打开文档,减少资源消耗。

方法二:手动构造URL(适合自定义参数场景)

如果你需要添加额外的URL参数,或者明确控制路径,可以手动拼接URL:

<xp:link escape="true" id="link1" styleClass="a">
  <xp:this.title><![CDATA[#{javascript:rowData.getDocument().getItemValueString("Subject")}]]></xp:this.title>
  <xp:this.text><![CDATA[#{javascript:rowData.getDocument().getItemValueString("Subject")}]]></xp:this.text>
  <xp:this.value><![CDATA[#{javascript:
    // 获取文档UNID
    var docUNID = rowData.getDocument().getUniversalID();
    // 拼接URL:外部数据库路径 + XPage名称 + 文档ID参数
    // 如果是跨服务器访问,需要换成完整URL,比如"http://yourserver/extdb.nsf/document.xsp?..."
    return "extdb.nsf/document.xsp?documentId=" + docUNID + "&action=openDocument";
  }]]></xp:this.value>
</xp:link>

注意事项

  • 确保extdb.nsf的访问权限设置正确,当前应用的用户能访问目标数据库和文档。
  • 务必替换代码中的targetXPage或手动拼接里的XPage名称为你实际配置的那个(比如你可能用的是viewDoc.xsp)。

内容的提问来源于stack exchange,提问作者theBastian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 15:55:28