2015-03-01 5 views
0

Недавно я создал учетную запись mongolab на платформе песочницы (так что никаких админ-привилегий). У меня есть простая тестовая программа для интеграции Hibernate OGM + JPA 2.1 с моей базой mongo. Когда я пытаюсь запустить мое приложение я получаю следующую ошибку (singnificant часть):Ограничить ограничение типа пользователя Hibernate OGM?

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 и следующие строки бросилось в глаза:

Пользователь, определенный с помощью USERNAME, должен иметь привилегии для создания новой базы данных. База данных будет иметь имя, определенное с помощью базы данных. Принимает «true» или «false».

Есть ли способ, которым я могу переопределить это в Hibernate OGM? Или, может быть, кто-то использовал другого провайдера, у которого нет этого ограничения? (попытался настроить eclipselink без везения)

P.S .: Я знаю, что я могу подключиться к mongolab с помощью java-драйвера MongoDB, создающего MongoClient, и это было сделано. Я хочу придерживаться настройки JPA.

+0

Вы пробовали DataNucleus JPA с mongodb? Не знаю, применимо ли это «ограничение», потому что не может сказать, что я понимаю, что он говорит –

ответ

1

Кажется, вы работаете в OGM-733, который был исправлен совсем недавно. Он должен работать с Hibernate OGM 4.1.2.Final.

+0

Спасибо за подсказку @Gunnar. Я прошёл вчера вечером, чтобы настроить поставщика eclipselink с монго, работает как шарм. Если кто-то еще пытается сделать чистую настройку, я поставлю тестовый проект на github, возможно, с двумя настройками (eclipselink и hibernate ogm). Вы дали справедливый ответ, и у вас есть мой голос. –