java - 无法通过Java从数据库检索记录

标签 java lotus-notes lotus-domino

我正在尝试通过 Java 获取 Lotus-Domino nsf 数据库中的行。我确实成功地获取了列名称和列计数,因为它们与我的 ibm Notes 客户端上显示的相同。但是,每当我通过 view.getAllEntries() 获取 ViewEntryCollection 时,它似乎都是空的。

我尝试了几种不同的选择,包括反射。

for (Object object : database.getViews()) {
    View view = (View) object;
    if (view.getName().equals("For Printing\\By Date")) {

        // this prints out "view.getEntryCount() = 1145"
        System.out.println("view.getEntryCount() = " + view.getEntryCount());

        // this prints out "view.getAllEntries().getFirstEntry() = null"
        System.out.println("view.getAllEntries().getFirstEntry() = " + 
                        view.getAllEntries().getFirstEntry());

        break;
    }
}

我希望定义第一个条目,因为它说它的条目计数是 1145,但实际上是 null。这是权限问题吗?

最佳答案

是的,这可能是一个权限问题,而且很可能是这样。 getEntryCount 不会检查您对基础条目的访问。它只是返回索引器计数的条目数。

但是,如果代码运行的身份(您的用户 ID,或代码签名者,如果是代理)不具有 View 中任何文档的读取权限(由于在文档中使用了 ReaderName 字段,最有可能)那么 getFirstEntry() 将返回 null。您需要确保代码以具有适当访问级别的用户身份运行。

关于java - 无法通过Java从数据库检索记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57044557/

相关文章:

java - 如何在 JAVA 中传递静态方法引用?

java - 如何防止 Lotus Notes 用户转发或复制通过 Java 中的 Notes.jar API 发送的消息?

java - spoj/ideone 上的 NullPointerException

java - 调用 java2wsdl 时如何向 Ant 脚本添加 extraClasses 选项?

java - 我不断收到空指针异常

powershell - Powershell和Lotus Notes-如何使用员工编号提取用户名?

java - 如何在 IBM Notes 中部署 java.policy 更改

javascript - 将响应显示为 XPages 父文档上的嵌入 View

xpages - Domino FT Search (SSJS) 在生产服务器上速度缓慢

javascript - XPage:获取 - this._partialRefresh AJAX 调用的内容?