XPage:@DbName() 从数据库文件路径中删除斜杠

标签 xpages

我正在使用 @DbName() 来获取笔记数据库的名称和文件路径。不幸的是,文件路径和名称作为一个不带斜杠的字符串返回。例如,如果文件路径为“Dir1/Dir2/dbname.nsf”,则返回为“Dir1Dir2dbname.nsf”。有没有办法获取包含斜杠的文件路径?

最佳答案

@DBName() 函数调用应用作列表数组。以下示例详细介绍了如何使用以及获得的输出。

代码

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
    <xp:table><xp:tr>
    <xp:td>
        <xp:label value="Field 1 (@DbName as a string) " id="label1">
        </xp:label>
    </xp:td><xp:td>
        <xp:text escape="true" id="computedField1" value="#{javascript:return @DbName();}">
        </xp:text>
    </xp:td>
    </xp:tr><xp:tr>
    <xp:td>
        <xp:label value="Field 2 (@DbName used as list)" id="label2">
        </xp:label>
    </xp:td><xp:td>
        <xp:text escape="true" id="computedField2">
        <xp:this.value><![CDATA[#{javascript:var database = @Subset(@DbName(), -1);
            var server = @Name("[CN]", @Subset(@DbName(), 1));
            return database + " on " + server
            }]]></xp:this.value>
        </xp:text>
    </xp:td></xp:tr>
    </xp:table>
</xp:view>

输出

Field 1 (@DbName as a string)   CN=testserver/O=testorg,subdir\Test.nsf
Field 2 (@DbName used as list)  subdir\Test.nsf on testserver

如果您没有得到这些结果,请使用示例代码更新您的问题。

要检查的另一件事是“\”是否在代码中被翻译为转义字符。

关于XPage:@DbName() 从数据库文件路径中删除斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16568686/

相关文章:

Xpages、faces-config、托管 bean 和作用域变量

java - XPage:通过 SSJS 和 Java 保存文档时发生文档冲突

xpages - 即使用户无权访问应有的读者字段,查看数据源也会返回条目

javascript - XPages 中的 Jquery 无法正常工作

objectdatasource - 任何适用于 xe :objectData? 的文档

javascript - getLockHolders 返回一个 java.util.Vector 如何为特定用户解锁

javabeans - 如何在从 XPage 调用的 Java Bean 中使用 SessionAsSigner?

java - 在 XPage 项目中使用 JOptionPane 对话框

java - 防止访问 Domino 服务器中的本地文件系统

css - 如何在 xPage for xp :viewPanel? 上隐藏寻呼机