मैं एक ServiceListFactoryBean जो सेवा कार्यान्वयन की एक सूची बनाता है:कैसे autowire को factorybean
final List services = ctx.getBean("services", List.class));
मैं भी पारंपरिक का उपयोग कर सकते हैं:
<bean id="services"
class="org.springframework.beans...ServiceListFactoryBean"
p:serviceType="ServiceInterface"/>
मैं एक समस्या के बिना applicationContext का उपयोग कर सेवाओं तक पहुंच सकेंगे कन्स्ट्रक्टर-Arg इंजेक्शन सफलतापूर्वक:
<bean id="aClass" class="AClass">
<constructor-arg ref="services"/>
</bean>
लेकिन यदि मैं निर्भर करता हूं कि मैं निर्भर करता हूं ency
@Autowired @Qualifier("services") private List services;
तो मैं द्वारा
FatalBeanException: No element type declared for collection [java.util.List]
मैं वसंत 3.0 उपयोग कर रहा हूँ एक BeanCreationException
वजह से मिलता है।
यह वास्तव में काम करेगा, क्योंकि अब यह प्रकार के बजाय नाम से स्वचालित हो रहा है। वह पहले मामला था। हो सकता है कि आप इस बार समस्या को खारिज कर दें। लेकिन आपको समझना चाहिए क्यों। तो, कृपया दिए गए उत्तर पर विचार करें। चीयर्स। –
सिरका - पूरे प्रोजेक्ट में अभी तक केवल दो बीन्स हैं (अब तक) और @Qualifiers का उपयोग करने के बावजूद, या स्पष्ट रूप से डिफ़ॉल्ट या ऑटोवायर को टाइप या द्वारा नामित करने के लिए, @Autowiring इस ServiceListFactoryBean के लिए काम नहीं करता है। –