2013-12-12 4 views
6

Мне нужно добавить следующий файл в моем «/ конф» директории Tomcat в: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: содержимое запрещено в прологе] (http://stackoverflow.com/questions/5138696/org-xml-sax-saxparseexception-content-is-not-allowed -в-пролог) – Raedwald

ответ

12

Ваш файл XML имеет некоторые невидимые символы (скорее всего, BOM) в начале (до <?xml version="1.0" encoding="UTF-8"?>), которые не разрешены в XML. вы можете просмотреть его с помощью шестнадцатеричного редактора. Простейший способ исправить это, чтобы создать пустой текстовый файл и скопировать содержимое в него, измените расширение на xml.

Для получения дополнительной информации свяжитесь с нами answer.

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

UTF8 файл представляют собой особый случай, потому что это не рекомендуется, чтобы добавить спецификацию к ним, потому что это может привести к поломке другие инструменты, такие как Java. Фактически, Java предполагает, что UTF8 не имеет спецификации, поэтому, если присутствует спецификация, она не будет отбрасываться и будет рассматриваться как данные.

0

У меня была аналогичная проблема, но эта ссылка link обеспечила решение на месте.

Цитата из статьи.

Любые символы перед началом XML-содержимого будут вызывать над сообщением об ошибке «org.xml.sax.SAXParseException: Content не разрешено в прологе».

Смежные вопросы