2012-03-22 7 views
5

В моем приложении grails, у меня есть весенние бобы, определенные в ресурсах.groovy. Теперь у меня также есть xml-файл с кучей уже определенных компонентов, и я хотел бы использовать их как вместо воссоздания каждого отдельного компонента в bean dsl.Можно ли импортировать XML-файл конфигурации внешнего компонента в resources.groovy?

Возможно ли это вообще? Есть ли эквивалент тега импорта xml в grails bean dsl? Я думал о добавлении импорта ... в applicationContext.xml, но я не уверен, что это подходящее место для этого.

Спасибо заранее,

Philippe

ответ

11

Вы можете импортировать фасоль в файле XML в resources.groovy используя

beans = { 
    importBeans('classpath:/applicationContext-services.xml') 
} 
+0

Я не мог заставить это работать ... мне нужно делать это внутри существующего закрытия бобов или после него? – Philippe

+0

Я обновил свой ответ –

+0

Все еще не могу заставить его работать с этим ... ни один из компонентов в моем XML-файле не загружается. – Philippe

2

Вы можете переименовать его в resources.xml и поместить его в ту же папку. Версия xml по-прежнему поддерживается, но она не создается автоматически, как версия Groovy.

+0

Спасибо. Я знал, что все еще могу это сделать, но я думал, что не могу сделать ресурсы.groovy и resources.xml сосуществовать. Кажется, это возможно ... – Philippe

1

Чтобы получить эту работу на Граалей 1.3.7 я на самом деле должен был сделать что-то подобное;

beans { 

    switch(Environment.current) { 

     case Environment.DEVELOPMENT: 
     importBeans('file:grails-app/conf/spring/messaging.xml') 
     break 
     default: 
     importBeans 'classpath*:WEB-INF/spring/messaging.xml' 
     break 
    } 

} 

Мне понадобился * после пути к классам, чтобы его можно было отобрать при запуске на сервере приложений. Не работает в разработке, хотя, следовательно, для него используется другой аксессор

См. http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/core/io/support/PathMatchingResourcePatternResolver.html для документации по синтаксису соответствия.