Tomcatの「/ conf」ディレクトリに次のファイルを追加する必要があります。
<?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)
Xmlファイルの先頭(<?xml version="1.0" encoding="UTF-8"?>
の前)にいくつかの非表示の文字(おそらくBOM)がありますが、これはxmlでは許可されていません。 16進エディタを使用して表示できます。それを修正する最も簡単な方法は、空のテキストファイルを作成してコンテンツをコピーし、拡張子をxmlに変更することです。
詳細については、この answer を確認してください。
から http://www.rgagnon.com/javadetails/Java-handle-utf8-file-with-bom.html
UTF8ファイルは、BOMをJavaのような他のツールに影響を与える可能性があるため、BOMを追加することは推奨されないため、特別なケースです。実際、Javaは、UTF8にBOMがないことを前提としているため、BOMが存在しても破棄されず、データとして表示されます。
同様の問題がありましたが、このリファレンス link は解決策を提供しました。
記事からの引用。
XMLコンテンツの開始前の任意の文字により、上記のエラーが発生します。
org.xml.sax.SAXParseException: Content is not allowed in prolog error message.