「ファイルの終わりが早すぎる」という非常に奇妙なメッセージが表示されます。私たちのサーバーの1つで、過去数日間の例外。同じ構成 XML が別のサーバーで正常に機能します。これらの両方のサーバーで Tomcat 5.0.28 を使用しています。このコードは何年もの間 (7 年以上) 機能してきましたが、最近サーバーがクラッシュした後、サーバーの 1 つでこの問題に直面しました。XML と Java 解析コードに変更はありません。:(
私が見ることができる唯一の違いは、Javaバージョンです-
問題 サーバー Java バージョン「1.6.0_16」 Java(TM) SE ランタイム環境 (ビルド 1.6.0_16-b01) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 14.2-b01、混合モード)
Working Server Java バージョン "1.6.0_07" Java(TM) SE ランタイム環境 (ビルド 1.6.0_07-b06) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 10.0-b23、混合モード)
これは、数年間動作しているJavaコードです-
private void readSource(final InputSource in ) {
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(in);
Element elt = doc.getDocumentElement();
this.readElement( elt );
} catch ( Exception ex ) {
ex.printStackTrace();
throw new ConfigurationException( "Unable to parse configuration information", ex );
}
}
そして、ここに例外があります。
[Fatal Error] :-1:-1: Premature end of file.
org.xml.sax.SAXParseException: Premature end of file.
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at com.circus.core.Configuration.readSource(Configuration.java:706)
既に XML の検証を試みましたが、エラーは見つかりませんでした。考えられる問題を他にどこで探すことができますか?
どんなポインタでも大歓迎です!
TIA - マニッシュ