SpEL 関連のソリューション (Spring config でリストを拡張する方法) を確認し、ListFactoryBean を拡張した後 ( http://ericlefevre.net/wordpress/2008/04/02/merging-lists-in-a-spring-configuration- file/ ) 次の解決策を思いつきました。
構成:
<bean id="AwithB" class="com.util.ListMergerFactoryBean">
<property name="listOfLists">
<list>
<ref bean="listA" />
<ref bean="listB" />
</list>
</property>
</bean>
ジャバ:
public class ListMergerFactoryBean implements FactoryBean<List> {
private List<List> listOfLists;
@Override
public List getObject() throws Exception {
List mergedList = new ArrayList();
for (List list : listOfLists) {
mergedList.addAll(list);
}
return mergedList;
}
@Override
public Class<?> getObjectType() {
return (new ArrayList()).getClass();
}
@Override
public boolean isSingleton() {
return false;
}
public void setListOfLists(List<List> listOfLists) {
this.listOfLists = listOfLists;
}
}
更新: Aron Bartle のソリューションを使用してバグを解消しました。ありがとう!