我有創建服務實現列表的ServiceListFactoryBean:如何自動裝配的FactoryBean
<bean id="services"
class="org.springframework.beans...ServiceListFactoryBean"
p:serviceType="ServiceInterface"/>
我可以訪問使用ApplicationContext的服務沒有問題:
final List services = ctx.getBean("services", List.class));
我也可以用繁體constructor-arg注入成功:
<bean id="aClass" class="AClass">
<constructor-arg ref="services"/>
</bean>
但是,如果我嘗試自動導入依賴ency
@Autowired @Qualifier("services") private List services;
然後我拿到引起BeanCreationException
通過
FatalBeanException: No element type declared for collection [java.util.List]
我使用Spring 3.0。
這確實會起作用,因爲現在它通過名稱而不是按類型自動裝配。以前就是這種情況。可能你是在這個時候解決了問題。但你必須明白爲什麼。所以,請仔細思考提供的答案。乾杯。 – 2010-01-28 09:40:34
醋 - 整個項目中只有兩個bean(到目前爲止),無論是否使用@Qualifiers,或者明確地將默認自動裝配設置爲byType或byName,@Autowiring都不適用於此ServiceListFactoryBean。 – 2010-01-28 11:30:17