声明一个bean的范围

Declaring scope for a bean

我的代码:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN //EN" http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="person" class = "org.dalai.listPers.Person"  scope = "singleton">                 
    </bean>
</beans>

我认为我做的一切都正确,但无论如何我在第 4 行收到错误:

Attribute "scope" must be declared for element type "bean"

任何解决此问题的提示都将不胜感激

范围属性仅在 Spring 2.0 中受支持,并且您必须使用正确的 DTD/Schema。

您可以参考下面的内容 link。

http://forum.spring.io/forum/spring-projects/aop/22379-why-does-scope-attribute-cause-xml-parsing-exception

尝试使用这个,它取决于DTD版本。

在您的情况下,您使用的是默认 DTD,因此定义的范围是 singleton="true",如果 DTD 是 2.0,那么版本的范围是 scope="singleton"

DTD - 默认值

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN //EN" http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="person" class = "org.dalai.listPers.Person"  singleton="true">                 
    </bean>
</beans>

DTD - 2.0

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" 
    "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
    <bean id="person" class = "org.dalai.listPers.Person" scope="singleton">
    </bean>
</beans>