未找到Domino 9 Update站点osgi类

问题描述 投票:0回答:1

我正在尝试使用Updatesite.nsf将jar部署到测试服务器。在这种情况下,我可以使用http osgi ss命令在服务器控制台上看到它的jdbc驱动程序插件。但是当我使用它时,我得到一个java.lang.ClassNotFoundException com.mysql.jdbc.driver。我错过了什么或做错了什么。谢谢

xpages lotus-domino
1个回答
1
投票

直接的答案是,调用Class.forName的代码需要在其类加载器中以这种或那种方式使用MySQL驱动程序,默认情况下XPage或in-NSF Java不具备该驱动程序。

稍微扩展一下:

如果你试图从NSF中的XPage或Java代码中调用它,它必须是来自另一个插件的XPages Library的一部分,而插件依赖于并重新导出驱动程序插件。

如果你试图从另一个插件调用它,那另一个插件应该有一个Require-BundleImport-Package条目来引入它。

如果你在jvm/lib/ext中插入它,默认情况下,该类将可供NSF使用,尽管这无疑会放弃基于OSGi的部署的细节。

它适用于XPages JDBC支持的原因是Designer中向导创建的包装插件包含一个特殊的扩展点,可以为需要它的ExtLib代码提供驱动程序类,但它们不会使它自动可用于XPages应用程序他们自己。

© www.soinside.com 2019 - 2024. All rights reserved.