PDA

View Full Version : ProxyFactoryBean



moo
Oct 3rd, 2004, 02:40 PM
I'm reading section

http://www.springframework.org/docs/reference/aop.html#d0e3285

that gives an example on how to configure ProxyFactoryBean



<bean id="person"
class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"><value>com.mycompany.Person</value></property>

<property name="target"><ref local="personTarget"/></property>
<property name="interceptorNames">
<list>
<value>myAdvisor</value>
<value>debugInterceptor</value>
</list>
</property>
</bean>


My question is what if class PersonImpl of the above example implements more than one interface?

I`m asking because of the following situation:

Let's assume a "PersonImpl" extends AbstractPerson
and AbstractPerson implements 2 interfaces, let's say interfaceA and interfaceB.

Now I have to decide which interface is the "right" interface for the property "proxyInterfaces" A or B? But If I stayed with A I loose the business functionality of B and vice versa.

Is this a real problem or am I just doing things the wrong way?

Maybe I have to pass all implemented interfaces in a list?



<property name="proxyInterfaces">
<list>
<value>interfaceA</value>
<value>interfaceB</value>
</list>
</property>


Thank you!
Mo

bpolka
Oct 3rd, 2004, 02:50 PM
note the name of the attribute proxyInterfaces is plural. It is usually a good indicator in Spring that things can be multiple (or a list). So



<property name="proxyInterfaces">
<list>
<value>com.mycompany.Person</value>
<value>com.mycompany.AnotherInterface</value>
</list>
</property>


should work.[/code]

moo
Oct 3rd, 2004, 02:58 PM
yep now it does... I had problems with my code but because of other things! thanks.