将 MongoDB java 驱动程序与 MobileFirst Platform 8 Beta JavaScript Adapter 一起使用

Posted

技术标签:

【中文标题】将 MongoDB java 驱动程序与 MobileFirst Platform 8 Beta JavaScript Adapter 一起使用【英文标题】:Using MongoDB java driver with MobileFirst Platform 8 Beta JavaScript Adapter 【发布时间】:2016-05-25 12:32:48 【问题描述】:

我正在尝试实现一个使用 mongodb java 驱动程序的 javascript 适配器。 我已经下载了mongodb driver。

我的 pom.xml 中的依赖项如下所示:

    <dependency>
     <groupId>org.mongodb</groupId>
     <artifactId>mongo-java-driver</artifactId>
     <version>3.2.2</version>
        <scope>system</scope>
        <systemPath>$project.basedir/lib/mongo-java-driver-3.2.2.jar</systemPath>
   </dependency>

在实现中,我正在尝试实例化 MongoClient:

    var mongoClient = new com.mongodb.MongoClient();

如果我尝试调用适配器,则会收到错误消息:

25.05.16 14:13:45:301 MESZ] 0000bb8c com.ibm.mfp.server.js.adapter.internal.JavascriptManagerImpl E FWLST0904E: 调用过程时引发异常:getFeed in 适配器:MongoAdapter org.mozilla.javascript.EcmaError: TypeError: [JavaPackage com.mongodb.MongoClient] 不是函数,它是对象。 (MongoAdapter-impl.js#20)

看起来,jar 没有正确加载,即使适配器构建没有错误。

我已经上传了一个小的示例适配器项目here。

【问题讨论】:

【参考方案1】:

我采用示例适配器并将其构建并部署到 MobileFirst Server 8.0 beta。然后,我使用 MobileFirst 控制台 -> 适配器 -> 资源中的 Swagger 对其进行了测试。成功运行 getFeed 过程。

我看到您使用的 MongoDB .jar 是使用 Java 8 构建的。可能是您在本地运行 Java 7,这可能是失败的原因。

确认您使用的是 Java 8,然后重试。

【讨论】:

谢谢,使用 Java 8 构建适配器并在 Java 8 上运行 MFP 工作正常。

以上是关于将 MongoDB java 驱动程序与 MobileFirst Platform 8 Beta JavaScript Adapter 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

如何将kindle上的epub转mobi格式

如何将kindle上的epub转mobi格式?

如何把azw3,mobi,epub等文件转换成常见的格式

如何把azw3,mobi,epub等文件转换成常见的格式

Java版本,Java版本MongoDB驱动,驱动与MongoDB数据库,Spring之间的兼容性

Java版本,Java版本MongoDB驱动,驱动与MongoDB数据库,Spring之间的兼容性