- PR -

responseXMLでのXMLデータ取得

投稿者投稿内容
未記入
常連さん
会議室デビュー日: 2005/07/04
投稿数: 31
投稿日時: 2006-06-28 13:12
今回の件では環境が違うので関係あるかどうかわかりませんが、

url = 'test.xml'

のところをフルパス(http://..../test.xml)で指定したらどうですか?

以前、そのあたりでresponseTextにはデータが入るけどresponseXMLはnullという経験をした覚えがあるので。
X09A正義
会議室デビュー日: 2005/08/30
投稿数: 16
投稿日時: 2006-06-28 13:33
自己レスです。

ブラウザをFireFoxに変更するとXML形式での取得が出来ました。

【結果一覧】
 IE6.0 → サンプルサイト  ○
 IE6.0 → 自WebLogic    ×
 FireFox → サンプルサイト ○
 FireFox → 自WebLogic ○

IEが駄目な以上、問題解決にはなっていないが・・・
X09A正義
会議室デビュー日: 2005/08/30
投稿数: 16
投稿日時: 2006-06-28 18:05
未記入さん情報有難うございます。

引用:
url = 'test.xml'
のところをフルパス(http://..../test.xml)で指定したらどうですか?



試してみましたが残念ながら失敗しました。

同じWindowsServer2003にTomCatをインストールして、
IE6.0とFireFoxで実験しましたが、
こちらは正常に動くことが確認できました。

やはり、WebLogicに原因があったようです。
大ベテラン
会議室デビュー日: 2006/06/28
投稿数: 116
投稿日時: 2006-06-28 23:49
お初にお目にかかります。
以後、よろしくお願いいたします。

本件ですが、responseTextが値を返しているところから見て、十中八九mioさんの指摘が的を得ていると思います。
Weblogicの設定により拡張子XMLのファイルをMIMEタイプ「text/xml」として返さないようにしているのでしょう。
(apacheでいうところのmime.typesのようなものがあると思いますが)

まあ、どの道固定ファイルを読むことはまずないでしょうから、ファイルでの通信で悩むより、サーバサイドでXMLオブジェクトを作成して、そちらの取得を試されることをお勧めします。
X09A正義
会議室デビュー日: 2005/08/30
投稿数: 16
投稿日時: 2006-06-29 15:30
暁さん有難うございます。

引用:
まあ、どの道固定ファイルを読むことはまずないでしょうから、ファイルでの通信で悩むより、サーバサイドでXMLオブジェクトを作成して、そちらの取得を試されることをお勧めします。



最初はJSPでXMLを生成してやり取りする方法を考えてましたが、
他の方法でXMLオブジェクト(Webサービスでやるのかな?)を取得する方法を試してみようと思います。
大ベテラン
会議室デビュー日: 2006/06/28
投稿数: 116
投稿日時: 2006-06-29 23:03
参考になるかわかりませんが、
私がサーブレット(Struts)で同様の事を行った際には、レスポンスに
javax.xml.parsers
javax.xml.transform
javax.xml.transform.stream
あたりのクラスで作成したDocumentを書き込みました。
X09A正義
会議室デビュー日: 2005/08/30
投稿数: 16
投稿日時: 2006-07-04 10:09
JWS(JavaWebService)を利用することでXMLでのデータ取得が可能となりました。

沢山のご意見有難うございました。

ひろ@ya
大ベテラン
会議室デビュー日: 2006/02/23
投稿数: 168
投稿日時: 2006-07-05 09:42
蛇足かもしれませんが参考までに。

JSPでXMLを生成した際に、Content-Typeが間違っていると Firefox ではXMLとして読み込みできるが IE では出来ないという現象の経験があります。

その時はContent-Typeを

text/xml; charset=送出するXMLファイルの冒頭のXML宣言に書いたのと同じcharset名

に修正したら正しく読み込みできるようになりました。

スキルアップ/キャリアアップ(JOB@IT)