在Spring 4.1.5中,属性“local”不允许出现在元素“ref”中

时间:2015-03-14 12:56:26

标签: spring spring-mvc

我目前正在浏览Mkyong Spring 3.0 tutorial

他接着澄清了这两件基本的事情 的 1。 Bean在不同的XML文件中

  

如果您指的是不同XML文件中的bean,       你可以用'ref'标签,'bean'属性来引用它。

2。 Bean在同一XML文件中

  

如果您在同一XML文件中引用bean,       你可以用'ref'标签,'local'属性来引用它。

我唯一能说的是版本local attribute中不再支持4.1. 5。对于时间,我坚持

<ref bean="thebeaninstance"/>

它适用于两者。 <ref bean="...">仅要求它位于same contextparent context

但我正在寻找能够解决差异的事情,如果不知何故我在2个不同的bean中遇到相同的ID,并且希望引用在不同XML中定义的那个,因为偏好转到了一个定义在相同的XML中。请建议。

1 个答案:

答案 0 :(得分:0)

Spring在版本4.0.1中放弃了对本地ref元素的支持。这是来自注释:

  

删除了spring-beans-4.0.xsd中的ref'local'属性,因为在3.1天之内开始允许相同的bean id在不同的地方重新出现时,'local'不再具有与常规bean ref的区别作用。同一配置文件的bean部分(具有不同的配置文件)。问题:SPR-10437

参见此处:link

基本上,您应该使用 bean 元素。