динамическое создание бина - PullRequest
1 голос
/ 07 июля 2011

Я пытаюсь зарегистрировать бин в моем плагине, но класс (реализация) этого бина настраивается.

в моем файле TestGrailsPlugin.groovy:

def doWithSpring = {
    userListener("${ConfigurationHolder.config.userListenerClass}")
}

, но этоне работает!что я должен делать, я думаю, должно быть очень простой задачей.но нигде не нашел!

ура

1 Ответ

2 голосов
/ 07 июля 2011

Вы можете загрузить класс динамически с помощью загрузчика классов GrailsApplication:

def doWithSpring = {
   def clazz = application.classLoader.loadClass(application.config.userListenerClass)
   userListener(clazz)
}

Также обратите внимание, что я использую application.config вместо использования класса держателей - держатели устарели в 2.0 и будут удалены в следующем выпуске.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...