Настроить внедрение зависимостей для компонентов XML в проекте Grails 3 - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть проект в Grails 3, который имеет зависимость проекта от пружины, в проекте Spring настроены компоненты XML.Как импортировать изгибы в архитектуре Grails?

build.gradle

dependencies {
    compile (project(':spring-project')) { transitive = false }
}

settings.gradle

includeFlat 'spring-project'

Я пробовал следующие способы:

в resources.groovy загрузите bean-компоненты:

beans = {
  importBeans('path/to/beans-definition.xml')
}

в resources.xml:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:task="http://www.springframework.org/schema/task"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">

    <import resource="path/to/beans-definition.xml" />

</beans>

Кроме того, в весеннем проекте настроены bean-компоненты, использующие java-аннотацию.Beans не работает в приложении grails, даже если установить пакет весенних проектов в сканировании компонентов.

@ComponentScan(basePackages = ["package.spring.project.beans"])
class Application extends GrailsAutoConfiguration {
     static void main(String[] args) {
          GrailsApp.run(Application, args)
     }
}

Но ничего не работает.Любая помощь будет оценена ..

1 Ответ

0 голосов
/ 13 сентября 2018

Beans также можно настроить с помощью grails-app / conf / spring / resources.xml. В более ранних версиях Grails этот файл был автоматически сгенерирован для вас скриптом run-app, но DSL в resources.groovy сейчас является предпочтительным подходом, поэтому сейчас он не генерируется автоматически. Но он все еще поддерживается - вам просто нужно создать его самостоятельно.

<bean id="myBean" class="my.company.MyBeanImpl">
<property name="someProperty" value="42" />
<property name="otherProperty" value="blue" />

далее проверьте ссылку

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