我正在将使用 Spring security 3.0 的应用程序迁移到 Spring security 3.1。
我收到有关引用不正确架构的错误:
SEVERE: Exception sending context initialized event to listener instance of class
org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration
problem: You must use a 3.0 schema with Spring Security 3.0.(2.0 or 3.1 versions are not
valid) Please update your schema declarations to the 3.0.3 schema (spring-security-
3.0.3.xsd).
Offending resource: ServletContext resource [/WEB-INF/security-context.xml]
当我查看 /lib 时,我看到许多 3.1 版本的 jar 被复制为 3.0 版本。我怀疑这是导致上述错误的原因。
当我使用 Eclipse Maven 插件查看 pom.xml 的依赖关系树时,我可以看到引用早期版本的位置(例如 spring-security-acl 依赖于几个 3.0 jar),但它们被标记为“因冲突而忽略”和...'。这是否意味着它们应该从构建的战争文件中省略?
我已经尝试在我的 pom 根目录中明确命名这些文件的 3.1 版本,但旧版本仍然包含在内。