2013-12-12 38 views
6

允許我需要將以下文件添加到我的Tomcat的「/ conf目錄」目錄:的SAXParseException:內容是不是在序言

<?xml version="1.0" encoding="UTF-8"?> 
<Context useHttpOnly="false" path="/bbc"> 
    <Realm className="com.bbc.tomcat.BBCSecurityRealm"/> 
</Context> 

添加此文件後,我收到以下錯誤時啓動Tomcat啓動」

ERROR ecmdefault util.digester.Digester 18:37:14,477 localhost-startStop-1 : Parse Fatal Error at line 1 column 1: Content is not allowed in prolog. 
org.xml.sax.SAXParseException: Content is not allowed in prolog. 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1427) 
+0

[org.xml.sax.SAXParseException:內容在prolog中是不允許的]的可能重複(http://stackoverflow.com/questions/5138696/org-xml-sax-saxparseexception-content-is-not-allowed -in-序言) – Raedwald

回答

12

你的XML文件在啓動未在XML使一些無形的字符(最有可能的BOM)(<?xml version="1.0" encoding="UTF-8"?>之前)。你可以用十六進制編輯器查看它。要解決這個問題是創建的最簡單方法一個空文本文件並將內容複製到它中,將擴展名更改爲xml。

檢查此answer以獲得進一步的幫助。

http://www.rgagnon.com/javadetails/java-handle-utf8-file-with-bom.html

UTF8文件是一個特例,因爲它是不推薦的BOM添加到它們,因爲它會破壞其他工具,如Java。實際上,Java假設UTF8沒有BOM,所以如果BOM存在,它不會被丟棄,並且會被視爲數據。

0

我有一個類似的問題,但這個參考link提供瞭解決方案的地方。

來自文章的引用。

XML內容開始之前的任何字符都將導致上面的「org.xml.sax.SAXParseException:內容在prolog中不被允許」錯誤消息。

相關問題