Импортировать контекст приложения Grails подключаемого модуля - PullRequest
1 голос
/ 27 июля 2011

У меня есть настройка проекта, которая состоит из обычного приложения Grails и подключаемого модуля Grails. В приложении Grails используется подключаемый модуль. Внутри моего подключаемого модуля я автоматически подключаю несколько компонентов, используя аннотации Spring в grails-app/conf/spring/resources.groovy:

beans = {
    xmlns context: 'http://www.springframework.org/schema/context'
    context.'component-scan'('base-package': 'some.pkg.inplace')
}

Для моего обычного приложения Grails я не смог выяснить, как импортировать контекст приложения подключаемого модуля. Есть ли способ сделать это с помощью элемента <import/> Spring? В противном случае мне пришлось бы поместить тот же код в resources.groovy моего приложения Grails для сканирования бинов.

1 Ответ

3 голосов
/ 27 июля 2011

Вы можете импортировать его, используя importBeans, например:

importBeans("classpath:other-context.groovy")

в этом случае он импортирует дополнительный контекст из classpath (возможно, ваш контекст из плагина inplace также находится где-то в classpath).

Путь может быть file:other-context.groovy, file:other-context.xml или даже file:path/to/contexts/*.xml

Кстати, я не уверен насчет «плагинов на месте», но традиционные плагины могут расширить существующий контекст пружины, есть специальный метод doWithSpring при определении плагина. Так что вы можете добавить свой собственный компонент здесь.

...