spring: set property of one bean by reading the property of another bean?

Viewed 42146

Is it possible to set the property of one bean by reading the property of another bean? For instance, suppose I had:

class A {
   void setList(List list);
}

class B {
   List getList();
}

I would like Spring to instantiate both classes, and call A's setList method, passing in the result of calling B's getList method. The Spring configuration might look something like:

<bean id="b" class="B"/>
<bean id"a" class="A">
    <property name="list" ref="b" ref-property="list"/>
</bean>

Alas, this made-up XML does not work.

Why not just inject B into A? Because I do not want to introduce the extra dependency. A is only dependent List, not on B.

3 Answers
Related