朝顔日記

たまに xml パースエラーが出る

2005-07-18

しばらく前から、この日記のトップページ(何)で お使いの ua によっては xml パースエラーが出ることがあるようです。この日記は、xhtml1.1 に基づいて記述しているため、application/xhtml+xml を解する UA には、application/xhtml+xml として送出しており、それがために、整形式になっていないと xml パースエラーを起こして表示できなくなるわけです。

が、確認してみたところ個別エントリーは整形式になっているし、トップに表示される最新数件分の記事をまとめたものも整形式になっています。じゃ、なんで パースエラーが起きるんじゃ、こんちくしょうてなもんで、原因を究明するべくアレコレ調べてみているわけですが、判然としません。はじめは改造した rNote のシステムに何らかの原因があるのではと疑っていたのですが、生成された html をローカルで試してみても、たまに発生します。もちろん、ローカルで application/xhtml+xml として閲覧してみました。

毎度発生するわけではないというあたりがかなり謎なわけですが、IRC で皆さんに尋ねてみたところ、どうも Firefox の trunk ビルドを使用している方々の間ではよく発生しているようです。どうも Firefox 1.0.4 などでは発生しないようなのです。もしかすると trunk のバグなんでしょうか。

パースエラーが発生する場合、エラー箇所は同じで、</div> が足りない旨メッセージが出ます。たいていの場合リロードすれば正常に表示されるのですが、そうでない場合もあり、リロードを繰り返すと、エラーメッセージの内容が変化して、挙句の果てにはクラッシュしたりすることもあるようです。また、開いているページではなく隣のタブの内容が現れたという報告もあり、こうなってくるといかにも、Firefox trunk のバグぽいです。

原因を追求して、単純なテストケースを作るべくアレコレしてみましたが、必ずパースエラーになるわけではないので、なかなか究明には至っていません。

ということでしばらくの間、application/xhtml+xml として送出するのを止めておこうかなぁと思ったり思わなかったり。

text/html で送出すれば問題は起こらないのでしょうが、それでは原因の究明にもならないと思いますので、もうしばらく対応した UA には application/xhtml+xml のまま送出しますので、パースエラーを目撃した方は、コメント欄にでも UA 名をお知らせいただければ幸いです。って、パースエラーでどうやってコメント欄に書くのかって問題はありますが、そこらは何とかしてください。:p)

昨日までの分でも構わないので、Firefox 1.0.4 でパースエラーの目撃情報とか、Firefox 以外の UA での目撃情報があるとうれしい(?)かも。

とぴあさん(誰)からバグかもしれんという説を裏付ける有力なスクリーンショットをいただきました。エラー箇所に違うタブの内容(?)が表示されています。氏も trunk ユーザです。

「たまに xml パースエラーが出る」へコメントをつける

書き込み時の挙動について
URI らしき文字列には自動的にリンクが張られます。また "<" や、">" は実体参照化されます。
スパム対策のため、リファラを切っていると投稿できません。

この記事へのツッコミ

1: 鯖缶 (2005-07-18T14:49:48+09:00)
Deer Park Alpha 2{Build ID:2005071606}で遭遇しました。
其の後の挙動はのりさんが書かれている挙動と異なり、リロードすると正常に表示されました。
其れ以前のtrunk buildでも遭遇しましたが、リロードしたら必ず正常に表示されました。
以上、目撃情報でした。
2: のり (2005-07-18T15:01:47+09:00)
ご報告ありがとうございます。確かにたいていの場合はリロードすると正常に表示されるんですよね。そこらあたり記述がわかりにくかったので、本文に追記しました。
3: おくの (2005-07-18T19:26:16+09:00)
エラーでページ読めなかったのでツッコミ入れられず、思わずmailしました。今は正常に閲覧できますねぇ。nightly使ってると思わぬことに遭遇します。エラー出たときと変わらず(rv:1.8b4) Gecko/20050716です。
ところで<ins>と</ins>の間は、引用なんですよネ。そのまま<ins>と</ins>で表示されるんですけど…。それで良いのかな?
4: のり (2005-07-18T22:35:00+09:00)
まだバグと決まったわけではないですが、どうも trunk のバグのようですねぇ。他の UA での目撃情報があればそうでもないんでしょうけども。>おくのさん
ins 要素は追記を示すものです。たいていの UA だと下線付きくらいがデフォルトスタイルだと思うんですが、下線は見た目きつすぎるので、スタイルでマークアップをそのまま表示するようにしてあります。もっとも IE とかだと見えないんですが。:p)
5: くでん (2005-07-20T23:03:08+09:00)
今日、数度アクセスしてみたのですが症状がでなくなってる気がします……
6: のり (2005-07-22T19:53:36+09:00)
この記事をアップした後に、1、2度目撃しているんですが、その後は私も目撃していません。一体原因は何だったんでしょうねぇ。
7: もとひこ (2005-07-22T20:14:34+09:00)
2005072106でも未だ発生します。
8: もとひこ (2005-07-27T21:05:12+09:00)
Bug 275564 - Random characters appear in XML parser "mismatched text" error message
https://bugzilla.mozilla.org/show_bug.cgi?id=275564

2005-07-26 06:09 PDTチェックイン。
9: のり (2005-07-27T21:55:49+09:00)
テストケースでもリロードを繰り返すと同じようにエラーメッセージが変化しますし、やはり Bug 275564 ですかねぇ。であればこれにて1件落着ですね。:-)
この記事の永続的 URI ならびに トラックバック ping URI
http://diary.noasobi.net/2005/07/diary_050718a.html