700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 关于“前言中不允许有内容”的XML错误

关于“前言中不允许有内容”的XML错误

时间:2021-01-17 11:12:53

相关推荐

关于“前言中不允许有内容”的XML错误

首先提一点,这类型的错误我主要在两个方面遇到

1、确实XML文件格式有问题

格式错误大多会有IDE提示,但例如“”中的路径这种就无法被IDE检查到,要注意是不是哪里多了个空格逗号一类的。

2、没有引入XML文件或者引入错误

在例如springframework中的XmlBeanDefinitionStoreException,该异常一个是xml配置文件有问题,还有就是根本没写ClassPath:后面的内容,他不会直接报没找到,而是报执行后的异常,一报就是一堆。

错误示例

学习springmvc原理时,下面的做法只在学习原理时这样写

<!--DispatcherServlet要绑定Spring的配置文件--><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc-servlet.xml</param-value></init-param>

<servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping>

接着我们将 <param-value>classpath:后面的文件名删除。

很容易就得到了一个异常

org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 1 in XML document from class path resource [] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 前言中不允许有内容。

为什么没有报没找到呢?因为人家在设计框架时认为你不会犯这种萌萌错误SAXParseException这个异常我们可以分析一下,SAX(simple API for XML)是一种XML解析的替代方法,他是逐行进行的。sax中在文档的开始和结束时会触发文档处理事件。SAX解析异常,spring告诉你是xml方面出了问题看起来也挺人性化,呵呵o(* ̄︶ ̄*)o。

后记:UTF-8 BOM或者UTF-8 这种格式问题在新版IDE中一般不会出现。

BOM的首行你可以自行研究一下,DOM(文档对象模型)是W3C标准。

你可以尝试下面的办法

用notepad++打开,编码=>转为utf-8

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。