我开发了一个基于Java的Lotus Domino Email Client Application。我在httpsession.setAttribute中保存lotus.domino.Session对象以进行会话管理。我们决定在两个不同的服务器上部署应用程序,并管理两者之间的负载平衡和会话复制。
现在我们在复制lotus.domino.Session时遇到问题,因为lotus.domino.Session未被序列化。
请帮助我
谢谢
答案 0 :(得分:1)
AFAIK,你运气不好。
Domino对象(即lotus.domino包中的任何内容)存储指向C API对象的链接,该对象必须进行垃圾回收以避免内存泄漏。 因此,如果Domino对象被序列化,它将在存储它的请求结束时变为有毒,因为它的C对象链接将在该请求结束时自动回收。
答案 1 :(得分:0)
正如Leyrer所说,不可能将任何Domino对象序列化,因为它有一个无法存储的C-API后端组件。
此外,Session对象也从未设计用于连接池。因此,即使您跳过序列化,也可能会遇到其他问题。
根据您要完成的任务,您可以创建自己的可序列化对象,只需要重新创建会话和任何其他对象所需的引用。