【问题标题】:How to access local notes database from web browser如何从网络浏览器访问本地笔记数据库
【发布时间】:2016-02-19 05:33:58
【问题描述】:

我在网络服务器上运行我的应用程序: http://myhost.com/mydatabase.nsf/Home.xsp

在主页上,我有一个按钮,通过单击我想要访问本地名称.nsf 而不是 myhost.com 的内容。

这些行失败:

var namesDB:NotesDatabase = session.getDatabase("", "C:\notes\data\names.nsf");
var namesDB:NotesDatabase = session.getDatabase("Local", "C:\notes\data\names.nsf");

此行返回 myhost.com Domino 数据库:

var namesDB:NotesDatabase = session.getDatabase(null, "names.nsf");

还有其他方法可以打开本地PC上的NSF文件吗?

【问题讨论】:

  • 为什么不在同一台机器上安装服务器,把nsf放在上面,通过127.0.0.1访问?

标签: xpages lotus-notes


【解决方案1】:

在这种情况下,运行在服务器上的 XPage 不知道客户端机器,并且代码完全在服务器上运行。因此,除非在特定的公司设置中您可以使用请求机器的名称来进行文件系统引用(我不建议这样做),否则它是完全不同的。

不过,据推测,您可以在 XPiNC 中运行该应用程序 - 如果您愿意忍受那里的所有折衷,那么 XPage 将在本地计算机上以与普通 Notes 应用程序相当的方式执行。

顺便说一下(这与服务器/客户端障碍无关),我认为这些字符串会有自己的问题:JavaScript 字符串中的反斜杠是转义字符,因此您必须将它们加倍才能解决作为单个反斜杠,例如 "c:\\notes..."

【讨论】:

    【解决方案2】:

    据我所知,您正在尝试的事情是不可能的。您的 XPages 代码正在服务器上运行 - 您可能会在 PC 的浏览器中看到输出,但任何 SSJS 代码都在服务器上运行。所以它不知道你的本地 names.nsf 在哪里。这就像创建一个计划代理以在服务器上运行并访问您的本地名称。nsf - 它不知道您的 PC 在哪里。

    CSJS 将在您的 PC 上运行,因此会知道您的 names.nsf 在哪里,但无法打开 NSF。

    在“邮件首选项”中,可以将联系人同步到您的邮件文件,这是在 iNotes 中访问它们所必需的。如果这样做,您可以查看您的邮件文件。这可能是最好的选择。

    【讨论】:

    • 保罗和杰西是对的。但是,您可以使用 href 属性并指向 notes:///names.nsf (是的,这是 3 个斜杠),它将在您的 Notes 客户端中打开本地 names.nsf ;-) Paul 的地址同步想法听起来很合理,除非您在地址簿的其他部分之后
    • 谢谢 stwissel .. 至少这是一个通过单击 xPages 上的按钮来强制在 Notes 客户端中打开 names.nsf 的选项.. 我只是认为有一种与本地文件交互的方法通过 xPages 只需传递文件路径
    猜你喜欢
    • 2013-10-20
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多