java - Lotus Notes 代理 - 在数据库上注册代理

标签 java lotus-notes lotus-domino lotus

我正在编写一个远程 Lotus/Domino NSCO(Notes CORBA API)Java 客户端,用于读取和写入 Domino 服务器。客户端应该大致能够为用户邮箱执行和模拟 Lotus Notes 桌面客户端的所有功能(邮件、日历、任务)。

那些使用过 NSCO.jar 的人可能已经意识到它有许多限制。一个示例是将文档标记为已读/未读,这不是使用此 API 实现的。为了绕过这个问题,我最新的方向是在服务器端编写一个 Java 代理,它将使用 Java Notes 本地 API 将文档标记为已读/未读。我稍后可以使用 NSCO API 调用该客户端。我希望能够为每个用户调用此代理(每个用户都有自己的数据库),但我不喜欢在每个数据库上创建此代理实例的想法。据此,我的问题是: - 如何(如果可能)在 Domino 中注册代理以便每个用户都可以使用它?

除了这个具体问题之外,我非常感谢任何有关该主题的优秀文档或书籍的链接。 (我相信我已经浏览了大部分在线文档,而且它们相当糟糕或过时,因此书籍可能更有用)

谢谢。

最佳答案

您的问题非常广泛,但我会尽力回答。

首先,我认为您没有意识到在模拟 Notes 客户端时尝试执行的艰巨任务。

前端的许多功能将无法使用,并且创建后端代理来访问该功能会给服务器带来过度的压力。您将必须进行一些认真的负载测试,看看它会产生什么影响。

How (if possible) can I register an Agent in Domino so that is available for every user?

正确的方法是在模板中创建代理一次,然后让邮件文件更新其设计 ( Admin related help )。然后,代理根据需要在每个用户的邮件文件中运行。您还需要考虑代理的运行方式。例如,如果您按计划运行它,则 AMGR 可能不会按您的预期运行它。

如果您计划启动一个代理来处理所有数据库,那么您就必须开始处理代理的安全性问题。

或者您可以选择DOTS tasklets的路线。这些是 OSGi 包,可以像服务器上的服务一样运行。

I would very much appreciate any links towards good documentation or books on this topic.

Domino Designer 客户端中的帮助将是 API 上的最新帮助。 Domino Wiki将有很多您正在寻找的资源 Material 。

我个人认为仅靠 NCSO 无法实现您想要实现的目标。我建议利用现有的标准与服务器通信。例如 POP3/SMTP/ICAL/RnR/DDS(REST API)。或者使用 iNotes,它的开销比您想要实现的目标要少得多。

关于java - Lotus Notes 代理 - 在数据库上注册代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20269169/

相关文章:

lotus-notes - LotusScript: getItemValue ("Body") 将段落分成几行

java - Eclipse 在运行、调试之前不保存文件,

java - Ajax调用数据不绑定(bind)

javascript - Xpages 重复控制/查看文档 - 最佳实践

java - 如何捕获 "NotesException: Notes error: Remote system no longer responding"并重试?

java - 在 Domino Java 代理中使用枚举单例编码模式

java - 无效的线路定义 XML

java - 如何在 clojure 中访问一 jar jar ?

Xpages - 使用 Dojo 模块

java - 莲花多米诺骨牌下的错误雅各布库(未满足的链接错误:jacob-1. 17-x64(库已加载到另一个类加载器中)