Я уже некоторое время пытаюсь это понять, но не могу заставить это работать. Я использую весеннюю версию 3.2.3.RELEASE и думаю, что это может быть причиной некоторых моих проблем. Моя цель — переопределить bean-компонент, определенный в xml, с помощью файла конфигурации, который импортировал конфигурацию. Последний указанный класс — это мой TestAppConfig, куда я импортирую AppConfig и хочу просто переопределить реализацию bean-компонента с помощью макетных реализаций. Однако это не работает для меня. Будем признательны за любые предложения.
Это мой класс определения компонентов, в котором я определяю пару компонентов.
Вот рабочий класс @Configuration, куда я импортирую файл конфигурации компонента.
@Configuration
@Import(RestAppConfig.class)
@ImportResource({VcheckAppConfig.ModuleResources})
public class VcheckAppConfig {
public static final String ModuleResources = "classpath:bcpbx-api-vcheck-rest-beans.xml";
}
Это мой класс конфигурации тестирования, в котором я хочу переопределить реализации с помощью моих макетов Mockito, и в модульном тесте рабочий код должен быть внедрен с этими макетными классами. Однако bean-компоненты в конфигурации xml по какой-либо причине не переопределяются. Если я удалю импорт, он будет использовать компоненты из этого класса, поэтому я знаю, что это работает. Возможно ли это с версией Spring 3.x?
@Configuration
@Import(VcheckAppConfig.class)
public class TestAppConfig {
@Bean
public Account testAccount() {
return new Account("TEST_ACCOUNT", new Vendor("TEST_VENDOR"));
}
@Bean(name ="vcheckResource")
public VcheckResource vcheckResource() {
return new VcheckResource(vcheckProvider(), new UUIDGenerator());
}
@Bean(name="vcheckProvider")
public IVcheckProvider vcheckProvider() {
System.out.println("CALLIGN GET MOCK");
return Mockito.mock(VcheckProvider.class);
}
@Bean
public IMessageRouter messageRouter() {
return Mockito.mock(IMessageRouter.class);
}
@Bean
public ICommandResponseCallbackRegistry responseRegistry() {
return Mockito.mock(ICommandResponseCallbackRegistry.class);
}
}
Подробнее здесь: https://stackoverflow.com/questions/288 ... tion-class
Как переопределить определение Spring Bean, определенное в XML, с помощью класса @Configuration для jerseytest ⇐ JAVA
Программисты JAVA общаются здесь
1719318541
Anonymous
Я уже некоторое время пытаюсь это понять, но не могу заставить это работать. Я использую весеннюю версию 3.2.3.RELEASE и думаю, что это может быть причиной некоторых моих проблем. Моя цель — переопределить bean-компонент, определенный в xml, с помощью файла конфигурации, который импортировал конфигурацию. Последний указанный класс — это мой TestAppConfig, куда я импортирую AppConfig и хочу просто переопределить реализацию bean-компонента с помощью макетных реализаций. Однако это не работает для меня. Будем признательны за любые предложения.
Это мой класс определения компонентов, в котором я определяю пару компонентов.
Вот рабочий класс @Configuration, куда я импортирую файл конфигурации компонента.
@Configuration
@Import(RestAppConfig.class)
@ImportResource({VcheckAppConfig.ModuleResources})
public class VcheckAppConfig {
public static final String ModuleResources = "classpath:bcpbx-api-vcheck-rest-beans.xml";
}
Это мой класс конфигурации тестирования, в котором я хочу переопределить реализации с помощью моих макетов Mockito, и в модульном тесте рабочий код должен быть внедрен с этими макетными классами. Однако bean-компоненты в конфигурации xml по какой-либо причине не переопределяются. Если я удалю импорт, он будет использовать компоненты из этого класса, поэтому я знаю, что это работает. Возможно ли это с версией Spring 3.x?
@Configuration
@Import(VcheckAppConfig.class)
public class TestAppConfig {
@Bean
public Account testAccount() {
return new Account("TEST_ACCOUNT", new Vendor("TEST_VENDOR"));
}
@Bean(name ="vcheckResource")
public VcheckResource vcheckResource() {
return new VcheckResource(vcheckProvider(), new UUIDGenerator());
}
@Bean(name="vcheckProvider")
public IVcheckProvider vcheckProvider() {
System.out.println("CALLIGN GET MOCK");
return Mockito.mock(VcheckProvider.class);
}
@Bean
public IMessageRouter messageRouter() {
return Mockito.mock(IMessageRouter.class);
}
@Bean
public ICommandResponseCallbackRegistry responseRegistry() {
return Mockito.mock(ICommandResponseCallbackRegistry.class);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/28835697/how-to-override-spring-bean-definition-defined-in-xml-with-configuration-class[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия