报错信息如下:
2019-04-08 10:56:55,184 [WARN]: Nested exception:
2019-04-08 10:56:55,192 [WARN]: org.xml.sax.SAXParseException; systemId: file:///D:/work_space/js_de/debug/SeleniumConfig/bin/Debug/ReportSchema.xml; lineNumber: 4; columnNumber: 74; Invalid byte 1 of 1-byte UTF-8 sequence.
2019-04-08 10:56:55,200 [WARN]: at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
2019-04-08 10:56:55,209 [WARN]: at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
2019-04-08 10:56:55,216 [WARN]: at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
2019-04-08 10:56:55,226 [WARN]: at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
2019-04-08 10:56:55,234 [WARN]: at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
2019-04-08 10:56:55,242 [WARN]: at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
2019-04-08 10:56:55,269 [WARN]: at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
2019-04-08 10:56:55,277 [WARN]: at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
2019-04-08 10:56:55,294 [WARN]: at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
2019-04-08 10:56:55,305 [WARN]: at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
2019-04-08 10:56:55,315 [WARN]: at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
2019-04-08 10:56:55,324 [WARN]: at org.dom4j.io.SAXReader.read(SAXReader.java:465)
2019-04-08 10:56:55,339 [WARN]: at org.dom4j.io.SAXReader.read(SAXReader.java:264)
2019-04-08 10:56:55,346 [WARN]: at util.XmlUtils.CreateDocumentByPath(XmlUtils.java:75)
2019-04-08 10:56:55,354 [WARN]: at WinForm.showReports.AppendXML.getReports(AppendXML.java:23)
2019-04-08 10:56:55,361 [WARN]: at configSelenium.ConfigSeleniumStart.main(ConfigSeleniumStart.java:108)
2019-04-08 10:56:55,370 [WARN]: Caused by: org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 1 of 1-byte UTF-8 sequence.
2019-04-08 10:56:55,377 [WARN]: at org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)
2019-04-08 10:56:55,385 [WARN]: at org.apache.xerces.impl.io.UTF8Reader.read(Unknown Source)
2019-04-08 10:56:55,393 [WARN]: at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
2019-04-08 10:56:55,401 [WARN]: at org.apache.xerces.impl.XMLEntityScanner.scanLiteral(Unknown Source)
2019-04-08 10:56:55,409 [WARN]: at org.apache.xerces.impl.XMLScanner.scanAttributeValue(Unknown Source)
2019-04-08 10:56:55,418 [WARN]: at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanAttribute(Unknown Source)
2019-04-08 10:56:55,439 [WARN]: at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
2019-04-08 10:56:55,447 [WARN]: ... 12 more
出现这种报错的原因不尽相同,笔者这边最后确定是编码问题。
编码问题的排除分为两步:
(1)确定IDEA生成的文件采用的编码格式与xml文件的相同,为:UTF-8。
(2)私底下修改xml文件时,使用系统自带的记事本打开,修改完成后,直接Ctrl+s保存导致的。
原因:记事本默认的编码方式是ANSI的,但是我们server.xml的文件头声明为UTF-8,所以我想应该是保存的时候,编码方式乱了。
那么只要用相关软件转码转存就可以了。
解决方法:
(1)笔者采用note++软件打开,然后选择转存格式为“utf-8”,保存,再打开就好了。
(2)或者,使用记事本打开xml文件—-点击文件—另存为—修改编码方式为UTF-8 —覆盖保存,重新打开就好了。