@IT会議室は、2009年4月15日に新システムに移行し、さらに2012年5月29日にITエンジニアに特化した
質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用くださいませ。
- PR -

JSPを実行すると「ファイルのダウンロード」ダイアログが現れる

1
投稿者投稿内容
Js
常連さん
会議室デビュー日: 2002/05/28
投稿数: 25
投稿日時: 2002-05-30 15:33
下の jspプログラム ファイル名 JSP_TEST.jsp を実行すると、「ファイルのダウンロード」ダイアログが現れてしまいます。なぜなのか、ご存知の方がいらっしゃいまいたら、教えていただければ助かります。なお、環境は、Java2sdk.1.4.0 と Tomcat3.3.1 です。宜しくお願いいたします。

<プログラム> JSP_TEST.jsp

<%@ page contentType="text/html ; charset=Shift_JIS"%>

<html>
<body>
Hello World !!
</body>
</html>


YOU@IT
ぬし
会議室デビュー日: 2002/03/29
投稿数: 284
お住まい・勤務地: 大阪
投稿日時: 2002-05-30 16:13
もう少し環境を詳しく書いていただけると問題解決したすいと思います。

Tomcatは単体で動作させているのか?又はApacheなりIISなりと連携させているのか?
リクエスト送信する際のURLは?
などなど・・・
まりり
ぬし
会議室デビュー日: 2001/12/05
投稿数: 329
投稿日時: 2002-05-30 17:38
Tomcat単体で動く場合、デフォルトのポートが80ではなかったような。
http://hostname:8080/somedirectory/JSP_TEST.jsp
でいかがでしょう。

うまくいったのなら理由を調べてみましょう。
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-15 13:15
随分昔の情報ですが、私のところでも同様の現象
(JSPのURLを入力すると、ファイルのダウンロードが実行される)
が起きました。

ただ、私の場合は
http://ip_address:8080/test/
というような感じでポートを指定しています。

サーバであるLinuxから
http://localhost:8080/test/
とやった場合には問題無く画面を表示できるのですが、
WindowsXP/IE6.0で実行したときはファイルのダウンロードに
なってしまいます。

恐らくはサーバ側設定だと思っているのですが、
どこを修正すれば良いのでしょうか?

解決策をご存じの方はアドバイスをお願いします。


でくのぼう
大ベテラン
会議室デビュー日: 2003/10/06
投稿数: 162
投稿日時: 2003-12-15 13:29
コード:
×<%@ page contentType="text/html ; charset=Shift_JIS"%>
○<%@ page contentType="text/html; charset=Shift_JIS"%>



単にこれだけの違いの可能性がありますよ。
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-15 13:51
引用:

でくのぼうさんの書き込み (2003-12-15 13:29) より:
コード:
×<%@ page contentType="text/html ; charset=Shift_JIS"%>
○<%@ page contentType="text/html; charset=Shift_JIS"%>



単にこれだけの違いの可能性がありますよ。



返事ありがとうございます。
私の環境では
コード:
<%@ page contentType="text/html ; charset=Shift_JIS"%>
<%@ page contentType="text/html; charset=Shift_JIS"%>


のどちらもOKです。
(正確にはEUC-JPですが・・・)

出来る環境はLinux+Mozilla
出来ない環境はWindowsXP+IE6.0
というように認識していて、IEの設定かWindowsの設定が悪いと
思い現在も調査をしています。


何か確認することがあれば教えて下さい。
よろしくお願いします。
でくのぼう
大ベテラン
会議室デビュー日: 2003/10/06
投稿数: 162
投稿日時: 2003-12-15 14:14
実際の動作が気になったので調べてみました。
サーバは Tomcat 4.1.29 & JVM 1.4.1(Sun)
クライアントは Win2k + (IE6 or Mozilla1.5)、Linux + lynx です。
mso さんの環境とはやや異なりますので注意してください。

で、余分なスペースのついているHTTPヘッダを出力するJSP(末尾参照)に
それぞれのクライアントからアクセスしてみたところ

Win2k + IE6
 → DL ダイアログ
Win2k + Mozilla1.5
 → ブラウザ上で表示
Linux + lynx
 → ブラウザ上で表示

となりました。

あと、チェックをする時の注意点として、HTTPヘッダを変更した後は
再読み込みしない事を挙げておきます。
古いHTTPヘッダをキャッシュしているような動作をするものがあるので
上のテストは必ずブラウザを再起動しつつやりました。

それから、気になったんですが

引用:

どちらもOKです。



というのは、どういう状況をもってOKと言ってます?
WinXP + IE6.0 では駄目だったんですよね???

引用:

出来る環境はLinux+Mozilla
出来ない環境はWindowsXP+IE6.0



この部分と相反するように見えて混乱してしまいました。



以下は使用したJSP。

コード:
<%@ page
    language="java"
    contentType="text/html ; charset=ISO-8859-1"
%><html>
<body>

hogehoge

</body>
</html>


mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-15 14:31
msoです。
回答ありがとうございました。


引用:

あと、チェックをする時の注意点として、HTTPヘッダを変更した後は
再読み込みしない事を挙げておきます。
古いHTTPヘッダをキャッシュしているような動作をするものがあるので
上のテストは必ずブラウザを再起動しつつやりました。



キャッシュをクリア後、実行したら正しく動作をしました。
(
正しく動作とは
×<%@ page contentType="text/html ; charset=Shift_JIS"%>
○<%@ page contentType="text/html; charset=Shift_JIS"%>
のことです。
ご指摘のとおりtext/html ;ではダウンロードされてしましました。
)

引用:

それから、気になったんですが

引用:

どちらもOKです。



というのは、どういう状況をもってOKと言ってます?
WinXP + IE6.0 では駄目だったんですよね???


混乱を招く書き方をして申訳ありませんでした。
引用:

どちらもOKです。


というのはLInux*Mozilla1ではokということで、
WinXP + IE6.0 ではngでした。



今までLinuxでしか動作を確認したことが無かったために
今回のような状況に気がつきませんでした。
(たまにWindowsでチェックするときはMozillaでした。)
有難う御座いました。
1

アイティメディアの提供サービス

ホワイトペーパー(TechTargetジャパン/閲覧には会員登録が必要です)

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