【问题标题】:How to create session in domino agent with functional id如何在具有功能 id 的多米诺代理中创建会话
【发布时间】:2017-09-14 10:52:13
【问题描述】:

我有一些功能性的 id 到邮箱。

我需要通过 domino 代理连接到这个邮箱。(所以我需要创建具有功能 id 权限的会话) 但是当我尝试使用 NotesFactory.createSession("", username, password); 创建会话对象时我有一个例外:

无法从代理创建会话

所以如果有人知道我该怎么做,我会很高兴的。

您需要在两台服务器之间配置证书的建议对我没有帮助。

【问题讨论】:

  • 另外,当我尝试通过 DIIOP 获取会话时,我遇到了一个异常,无法从 Domino 服务器获取 IOR。据我所知,这是一项不可能完成的任务

标签: java lotus-domino lotus


【解决方案1】:

您不能以这种方式更改 Java 代理的身份。一个代理只能使用

NotesFactory.createSession(); // no arguments

如果它是响应 URL 运行的 Web 代理(作为 webqueryopen 或 webquerysave 代理,或通过 ?OpenAgent URL 命令),并且您在代理属性中设置了Run as Web User,则会话将是使用经过身份验证的 Web 用户的身份创建。

至于 DIIOP 案例,听起来您的服务器没有正确配置 IIOP 访问。查看描述设置的IBM Technote。 (不要注意技术说明中对 WebSphere 的引用。该问题会影响任何 IIOP 客户端。解决方案是修复服务器设置。)

【讨论】:

  • 访问verse邮箱的目标。据我了解,莲花邮箱迁移到云端时,只能通过notes客户端访问。
  • 如果您确实需要使用 Notes 客户端,并且您确实需要以特定 ID 的身份运行代码,那么您将不得不将 Notes 客户端的当前 ID 切换为您需要并使用不带参数的 createSession() 的那个。
  • 不,我需要在服务器上运行它,但具有功能 ID 权限。
  • 您可以设置两个代理。一种是使用“以 Web 用户身份运行”属性的 Web 代理。第二个是使用 URLConnection 调用 Web 代理的普通 Java 代理 - 发送用户登录名和密码信息。有关示例代码,请参阅此问题的第二个答案:stackoverflow.com/questions/496651/… 请注意,这假定在 Domino 服务器上启用了 HTTP 任务,并且允许基本身份验证。如果您必须进行会话身份验证,则更复杂,如果不启用 HTTP,则不可能。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-19
  • 1970-01-01
  • 2020-05-29
  • 1970-01-01
  • 2019-08-10
  • 1970-01-01
相关资源
最近更新 更多