我需要我的JAVA代码在我的Domino 9.0.1
上使用较新版本的JavaMail
。
我发现默认情况下在我的多米诺骨牌上安装了 2 个版本的 JavaMail。
-
JavaMail 1.3 - "./osgi/shared/eclipse/plugins/com.ibm.designer.lib.javamail_9.0.1.20131004-1200/lib"
-
JavaMail 1.4 - "./ndext"
我的 JAVA 代码默认使用 JavaMail 1.3
.
问题是如何强制使用JavaMail 1.4
?或者如何安装JavaMail 1.5
并强制JAVA
使用它?
PS:我已经尝试将JavaMail JAR放入"WebContent/WEB-INF/lib"
和"/jvm/lib/ext"
中。不幸的是,它没有帮助。
如果没有大量的黑客攻击,您将无法做到这一点 java 类加载器。XPages 引擎从 Domino 服务器上的 HTTP 任务开始,因此它会在加载应用程序之前加载,并且它的类加载器优先。
这个问题在另一个主题中讨论过,你可以检查一下,也许你会在那里找到一些想法。如何在 XPages 中使用更新版本的 JavaMail?
专门用于JavaMail-但是如果您打算从XPages(或OSGi)使用它,我想您可以将jar作为OSGi中的插件加载。这是OpenNTF Essentials的加载方式 - 我相信它会把它放在文件系统中安装的其他所有内容之前;-)
我正在描述如何做到这一点(即将任何 jar 包装到插件中) - 但我还没有完全完成 ;-)将在接下来的几天内尝试这样做...
在此之前,您可以从以下位置获得所需的一些内容: http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Master_Table_of_Contents_for_XPages_Extensibility_APIs_Developer_Guide - 在"库"和"部署"下查看
编辑:好的,这是第一篇关于如何将JAR包装到插件中的文章;-)http://www.dalsgaard-data.eu/blog/wrap-an-existing-jar-file-into-a-plug-in/
/John
我已经尝试了OSGi方法,但无法以某种方式使其工作。在这个Stackoverflow问题中,我发布了我的解决方案来更新Domino的Javamail实现。