java - 覆盖 Hibernate OGM 用户类型限制?

标签 java mongodb jpa mlab hibernate-ogm

我最近在沙盒平台上创建了一个 mongolab 帐户(因此没有管理员权限)。 我有一个简单的测试用例应用程序,用于将 Hibernate OGM + JPA 2.1 与我的 mongo 数据库集成。 当我尝试运行我的应用程序时,出现以下错误(重要部分):

Caused by: com.mongodb.CommandFailureException: { "serverUsed" : "ds062797.mongolab.com:62797" , "ok" : 0.0 , "errmsg" : "not authorized on admin to execute command { listDatabases: 1 }" , "code" : 13}
at com.mongodb.CommandResult.getException(CommandResult.java:76)
at com.mongodb.CommandResult.throwOnError(CommandResult.java:131)
at com.mongodb.Mongo.getDatabaseNames(Mongo.java:397)
at org.hibernate.ogm.datastore.mongodb.impl.MongoDBDatastoreProvider.extractDatabase(MongoDBDatastoreProvider.java:152)
... 34 more

我在 Hibernate ORM 的文档中做了一些挖掘 here以下几行引起了我的注意:

The user defined with USERNAME must have the privileges for the creation of a new database. The database will have the name defined with DATABASE. Accepts "true" or "false".

有什么方法可以在 Hibernate OGM 中覆盖它吗?或者也许有人使用了没有此限制的其他提供商? (尝试设置 eclipselink 但没有成功)

P.S.:我知道我可以使用 MongoDB java 驱动程序创建 MongoClient 连接到 mongolab,已经这样做了。我想坚持使用 JPA 设置。

最佳答案

看来您遇到了 OGM-733最近刚刚修复。它应该与 Hibernate OGM 4.1.2.Final 一起使用。

关于java - 覆盖 Hibernate OGM 用户类型限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28794094/

相关文章:

java - 后退按钮后,portlet 不会进入 processaction

python - 使用 mongoengine 从字典中的列表中提取

javascript - Javascript 中的异步 IO 和迭代变量

java - 如何在Java EE环境中使用JMS和JPA处理事务回滚?

hibernate - TransactionRequiredException : Executing an update/delete query

java - 使用 servlet 关闭数据库连接的问题

java - 我不知道输入是否为空要打印

java - MySQL-Server/Apache Tomcat 和使用 Hibernate/JPA 的 Tapestry 项目的组合使用什么配置?

java - 出现错误 io.restassured.internal.ValidatableResponseImpl 无法转换为 io.restassured.response.Response

javascript - NodeJS MongoDB 连接字符串问题