top / index / prev / next / target / source
日記形式でつづる いがぴょんコラム ウェブページです。
某アプリケーションが JDK 1.6 上で適切に XML ファイルを読み込めない不具合の原因がわかりました。(原因というか、バグ発動条件)
某アプリケーションが JDK 1.6 上で適切に XML ファイルを SAX 経由で読み込めない不具合の原因がわかりました。(原因というか、バグ発動条件)
Java JDK 1.6 の XML 処理系は、XML バージョン 1.1 のファイルがある特定条件を満たしたときに読み込みが稀にバグるようです。要素の部分が characters に渡ってきてしまうのです。Sun の Windows XP 向け Java JDK で確認しました。これを XML バージョン 1.0 とバージョン番号をデグレード(?) すると、この現象は発生しなくなります。
原因がわかって良かったです。
が、、、さて、はて、その某アプリケーションは XML 1.1 の利用が必須だったのかどうか、記憶があやふやです。何か理由があったような…。現状の状況だと、JDK 1.6 に対応するのメサキの対応としては、XML 1.0 に戻すことが手っ取り早そうです。 XML の内容が不適切であるという可能瀬も無いことはありませんのですけれども。