2016-03-31 2 views
1

Я пытаюсь настроить приложение Grails 3.1.4 rest-api. Я хотел бы использовать Монго и Spring Security для аутентификации, но когда я стираю из application.yml h2 источника данных и спящий режим и попробуйте запустить приложение я получаю много исключений, например:Grails, Spring Security и Mongo

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistenceInterceptor': 
Cannot create inner bean '(inner bean)#1b3bb287' of type [org.grails.orm.hibernate4.support.AggregatePersistenceContextInterceptor] 
while setting constructor argument with key [0]; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#1b3bb287': 
Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: 
public void org.grails.orm.hibernate4.support.AggregatePersistenceContextInterceptor.setHibernateDatastores(org.grails.orm.hibernate.AbstractHibernateDatastore[]); nested exception is 
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.grails.orm.hibernate.AbstractHibernateDatastore] 
found for dependency [array of org.grails.orm.hibernate.AbstractHibernateDatastore]: 
expected at least 1 bean which qualifies as autowire candidate for this dependency. 
+0

Добро пожаловать на SO. Пожалуйста, примите [тур] (http://www.stackoverflow.com/tour), чтобы получить обзор того, как работает SO. Будьте любезны и переформатируйте stacktrace и сформулируйте [вопрос] (http://stackoverflow.com/help/mcve). – Peter

ответ

0

Я могу подтвердить это поведение с Grails 3.1.7, если вы просто закомментируете значение H2 по умолчанию и часть кеша в application.yml. Тем не менее, она исчезает для меня, если я закомментировать следующее:

// compile "org.grails.plugins:hibernate4" 

Для справки, я использую следующие версии плагина для MongoDB и пружинной безопасности процессоров:

compile 'org.grails.plugins:mongodb:5.0.6' 
compile "org.mongodb:mongodb-driver:3.0.2" 
runtime 'org.springframework.data:spring-data-mongodb:1.8.1.RELEASE' 
compile 'org.grails.plugins:spring-security-core:3.1.1' 

Ура!