我正在尝试使用Updatesite.nsf将jar部署到测试服务器。在这种情况下,我可以使用http osgi ss命令在服务器控制台上看到jdbc驱动程序插件。但是当我使用它时,我得到了一个java.lang.ClassNotFoundException com.mysql.jdbc.driver。我缺少或做错了什么。谢谢
答案 0 :(得分:1)
直接的答案是,调用"address":{"street_no_and_name":"23","city":"Rowena Drive","country":"Timbucktoo","postal_code":"M5H3P5"}
的代码将需要一种或另一种方式在其类加载器中安装MySQL驱动程序,而XPage或in-NSF Java默认情况下不会。
对此进行扩展:
如果您试图从NSF中的XPage或Java代码中调用它,则它必须是另一个插件的XPages库的一部分,而另一个插件又依赖并重新导出驱动程序插件。
如果您尝试从另一个插件调用它,则另一个插件应具有一个Class.forName
或Require-Bundle
条目才能将其引入。
如果您在Import-Package
中插入该类,则默认情况下该类将对NSF可用,尽管这无疑会放弃基于OSGi的部署的精妙之处。
它对XPages JDBC支持有效的原因是,由Designer在向导中创建的包装式插件包括一个特殊的扩展点,以向需要它的ExtLib代码提供驱动程序类,但它们并未使其自动可用。 XPages应用本身。