表題の件。IEで自作XML(jsp製)を表示したら、以下のエラーがでた。
ajaxやflash等の処理にも、このままだと影響がある(気がする、IEでの実行時
XML ページを表示できません スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
この場合、XML中のエンコード指定()自体に問題がある場合もありますが、自分の場合は違ったです。
原因は、HTTPレスポンスヘッダ内の charset 指定でした。以下レスポンス詳細例。
HTTP/1.0 200 OK Date: Wed, 18 Feb 2009 02:29:16 GMT Server: Apache Content-Length: 128 Content-Type: text/xml;charset=Windows-31J Proxy-Connection: keep-alive ...
JSP的には、こんな感じ。
<%@page contentType="text/xml; charset=Windows-31J" language="java" import="java.util.*"%> ... ...
java脳で「Windows-31J」って思って、レスポンスのcharsetもそうやってしまいがちですね。。。