2013-12-12 9 views
6

Ich brauche die folgende Datei in meinem Tomcat ‚/ conf‘ Verzeichnis hinzuzufügen:SAXParseException: Der Inhalt wird nicht in Prolog erlaubt

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

Nach dem Hinzufügen dieser Datei, ich folgende Fehlermeldung erhalten, wenn Tomcat startet“

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

mögliche Duplikate von [org.xml.sax.SAXParseException: Inhalt ist in Prolog nicht erlaubt] (http://stackoverflow.com/questions/5138696/org-xml-sax-saxparseexception-content-is-not-allowed -in-prolog) – Raedwald

Antwort

12

Ihre xML-Datei hat einige unsichtbaren Zeichen (höchstwahrscheinlich die BOM) zu Beginn (vor <?xml version="1.0" encoding="UTF-8"?>), die nicht in xML erlaubt ist. Sie es mit einem hex-Editor sehen können. einfachste Weg, es zu beheben ist zu schaffen eine leere Textdatei und kopieren Sie den Inhalt hinein, ändern Sie die Erweiterung in XML.

Überprüfen Sie diese answer für weitere Hilfe.

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

UTF8-Datei sind ein Sonderfall, weil es nicht empfohlen wird eine Stückliste, um sie hinzuzufügen, weil es andere Tools wie Java brechen kann. Tatsächlich geht Java davon aus, dass UTF8 keine Stückliste hat. Wenn die Stückliste also vorhanden ist, wird sie nicht verworfen und als Daten angesehen.

0

Ich hatte ein ähnliches Problem, aber diese Referenz link stellte die Lösung vor Ort auf.

Zitat aus dem Artikel.

Alle Zeichen vor dem Start des XML-Inhalts verursachen oben "org.xml.sax.SAXParseException: Inhalt ist nicht in Prolog zulässig" Fehlermeldung.