Spring: Document root element "beans", must match DOCTYPE root "null

简介:


今天在项目中出现“Document root element "beans", must match DOCTYPE root "null”, 原来运行好好的代码,为什么这种问题呢? 根据提示,貌似是dtd或者schema的问题, 也确实是它的问题,但是分析过程却是这样的。

 问题分析过程:

 思考1、自己新加入了什么依赖呢? 加了如下的依赖:

 
  1. <dependency> 
  2.       <groupId>com.alibaba.external</groupId> 
  3.       <artifactId>sourceforge.spring.aop</artifactId> 
  4.       <version>2.0.7</version> 
  5.     </dependency> 

是2.0版本以上的版本啊,这能有什么问题?

思考2:是不是spring配置文件的格式出现了问题呢?

  拷贝了原来运行良好的文件头部进行替换,加上了“<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">”,但是问题依然没有解决。 替换的头部如下:

 
  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> 

或者

 
  1. <?xml version="1.0" encoding="UTF-8"?> 
  2.  
  3. <beans xmlns="http://www.springframework.org/schema/beans" 
  4.             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  5.             xmlns:aop="http://www.springframework.org/schema/aop" 
  6.             xmlns:tx="http://www.springframework.org/schema/tx" 
  7.             xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd 
  8.                      http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd 
  9.                      http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"> 

思考3:spring的依赖问题

在思考1中提到是使用的2.0.7版本,仔细查看依赖关系之后发现,该版本使用了sourceforge.spring的依赖。真是晕倒, 也不知道是同事在加入仓库的时候搞错了还是spring自身的依赖的时候版本搞错了。

分析好原因之后则做及时调试依赖

 

后来在spring forum上发现了正解:

You have the wrong xml configuration for the version of spring.
1.x use DOCTYPE
2.x use schema
You must have 1.x in the classpath.
引自http://forum.springframework.org/showthread.php?t=37883
spring 1.x 使用DOCTYPE,而2.x是用schema,

 




本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/564861,如需转载请自行联系原作者  

 

相关文章
|
3月前
|
XML Java 数据格式
编织Spring魔法:解读核心容器中的Beans机制【beans 一】
编织Spring魔法:解读核心容器中的Beans机制【beans 一】
45 0
|
Java Spring
解决Spring工具类BeanUtils copyProperties方法复制null的问题
解决Spring工具类BeanUtils copyProperties方法复制null的问题
606 0
|
2天前
|
Java 测试技术 Maven
Spring Boot单元测试报错java.lang.IllegalStateException: Could not load TestContextBootstrapper [null]
Spring Boot单元测试报错java.lang.IllegalStateException: Could not load TestContextBootstrapper [null]
|
5月前
|
应用服务中间件
Spring-boot启动失败 Unregistering JMX-exposed beans on shutdown 异常处理
Spring-boot启动失败 Unregistering JMX-exposed beans on shutdown 异常处理
65 0
|
24天前
|
Java Spring
flowable 监听器无法获取spring bean ,自动注入bean为null,解决方案
flowable 监听器无法获取spring bean ,自动注入bean为null,解决方案
|
2月前
|
JSON 前端开发 Java
【SpringBoot实战专题】「开发实战系列」全方位攻克你的技术盲区之Spring定义Jackson转换Null的方法和实现案例
【SpringBoot实战专题】「开发实战系列」全方位攻克你的技术盲区之Spring定义Jackson转换Null的方法和实现案例
42 0
|
3月前
|
设计模式 Java 测试技术
Spring依赖注入的魔法:深入DI的实现原理【beans 五】
Spring依赖注入的魔法:深入DI的实现原理【beans 五】
137 0
|
3月前
|
XML Java 数据格式
Spring Beans的魔法门:解密多种配置方式【beans 四】
Spring Beans的魔法门:解密多种配置方式【beans 四】
56 0
|
3月前
|
XML Java 数据格式
探秘Spring Bean的秘境:作用域篇【beans 三】
探秘Spring Bean的秘境:作用域篇【beans 三】
40 0
|
4月前
|
XML JavaScript Java
Spring5源码(16)-Spring将Xml文件解析为Document对象
Spring5源码(16)-Spring将Xml文件解析为Document对象
40 0