我需要我的JAVA代码才能在JavaMail
上使用较新版本的Domino 9.0.1
。
我发现默认情况下我的Domino上安装了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"
中。不幸的是,它没有帮助。
答案 0 :(得分:1)
如果没有使用java Classloader进行大量的黑客攻击,你将无法做到这一点。 XPages引擎在Domino服务器上以HTTP任务启动,因此它在加载应用程序之前加载,并且它的类加载器优先。
在另一个主题中讨论了这个问题,您可以查看,也许您会在那里找到一些想法。 How can I use an updated version of JavaMail in XPages?
答案 1 :(得分:0)
我不是专门针对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/
/约翰
答案 2 :(得分:0)
我已经尝试过OSGi方法但无法以某种方式使其工作。在this Stackoverflow question我发布了我的解决方案来更新Domino的Javamail实现。