Этот вопрос задан ранее в разделе ниже, но мой код все еще не работает. please click for the earlier threadJava Spring Framework JavaConfig в конфигурации XML
Это случай смешанной проводки в Spring Framework. У меня есть весенняя проводка, где я пытаюсь вызывать javaconfig beans из xml и затем вызывать xml через контекст приложения, но все еще получаю ошибку.
детали код ниже:
beanconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:c="http://www.springframework.org/schema/c"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean class="org.spring.wiring.javabasd.appcontextxml.JavaConfig">
</bean>
</beans>
JavaConfig класс
package org.spring.wiring.javabasd.appcontextxml;
import org.springframework.context.annotation.Bean;
@Configuration
class JavaConfig {
@Bean
public Shape xyz(){
return new Sphere();
}
@Bean
public Details abc(){
return new Details(xyz());
}
}
XMLbased Применение контекста вызова
package org.spring.wiring.javabasd.appcontextxml;
import org.springframework.context.support.ClassPathXmlApplicationContext;
class Main {
public static void main(String[] args) throws Exception {
ClassPathXmlApplicationContext context =new ClassPathXmlApplicationContext("classpath:org/spring/wiring/javabasd/appcontextxml/beanconfig.xml");
Details gg = context.getBean(Details.class);
gg.getVolume();
context.close();
}
}
Ниже приведена ошибка, которую я получаю при запуске.
Feb 21, 2017 9:08:25 PM org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
INFO: Refreshing org[email protected]b1a58a3: startup date [Tue Feb 21 21:08:25 EST 2017]; root of context hierarchy
Feb 21, 2017 9:08:25 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [org/spring/wiring/javabasd/appcontextxml/beanconfig.xml]
Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.spring.wiring.javabasd.appcontextxml.Details] is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:374)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:334)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1088)
at org.spring.wiring.javabasd.appcontextxml.Main.main(Main.java:9)
Похоже JavaConfig вызов был сделан, но «Подробности» и «Shape» бобы не становятся создана. Пожалуйста, помогите мне и дайте мне знать, если требуются коды других классов.
Спасибо! Это сработало. – Learner
Пожалуйста, отметьте, что вопрос принят. – mhshimul