具有不同ID但相同类的Bean没有获得别名

时间:2018-11-24 07:22:40

标签: java spring spring-mvc dependency-injection alias

我有两个bean indCartStrategyusCartStrategy,它们具有不同的ID,但具有相同的类和不同的参数值。我将它们都别名为相同的别名。而不是调用我的更高别名ID,它仍然调用前一个bean,而不是我声明的那个bean。

    <alias name="indCartStrategy" alias="cartStrategy"/>
<bean id="indCartStrategy" parent="defaultCartStrategy" class="com.strategy.impl.USCartStrategyImpl">
    <property name="cartValidators">
        <map key-type="com.validation.USCartValidationType">
            <entry key="CART_PAGE">
                <list value-type="com.validation.USCartValidator">
                    <bean class="com.validation.impl.USValidator2"/>
                </list>
            </entry>
        </map>
    </property>
</bean>





<alias name="usCartStrategy" alias="cartStrategy"/>
<bean id="usCartStrategy" parent="defaultCartStrategy" class="com.strategy.impl.USCartStrategyImpl">
    <property name="cartValidators">
        <map key-type="com.validation.USCartValidationType">
            <entry key="CART_PAGE">
                <list value-type="com.validation.USCartValidator">
                    <bean class="com.validation.impl.USValidator1"/>
                    <bean class="com.validation.impl.USValidator2"/>
                </list>
            </entry>
        </map>
    </property>
</bean>

在我的bean中,indCartStrategy USValidator1在调用cartStrategy时没有被调用,而两个验证器(即USValidator1USValidator2都被调用了。

0 个答案:

没有答案