- PR -

PDFをブラウザ内に表示させたい

1
投稿者投稿内容
てん
会議室デビュー日: 2007/04/06
投稿数: 3
投稿日時: 2007-04-06 18:57
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=23723&forum=12
上記の投稿とほぼ同じような内容の件で悩んでいます。

Adobe Rader6.0を利用して、サーバーのローカルに保存されている
PDFファイルを読み込みブラウザ内に出力させていましたが、
7.0または8.0にアップデートしたらブラウザではなく
Adobe Readerが起動しそこに表示されるようになってしまいました。
他のサイトに記載されていた対処方法(下記コードの追加)
response.addHeader( "Accept-Ranges", "none" );
を記述してもうまくいきませんでした。

原因および対処法をご存知の方がいれば、ぜひ教えてください。

環境
サーバー:Windows2000Server、WebSphere5.0
クライアント:Windows2000、IE6.0、Adobe Reader7.0
IIJIMAS
ベテラン
会議室デビュー日: 2006/12/06
投稿数: 77
投稿日時: 2007-04-07 15:01
とりあえず
response.addHeader("Content-disposition", "inline; filename=(PDFファイル名).pdf")
を試してみてください。
これでもだめかもしれませんが…
あすか
ぬし
会議室デビュー日: 2006/07/12
投稿数: 309
投稿日時: 2007-04-11 08:48
表示するためのサーブレットの呼び出しを行っていると思いますが
その呼び出しの際、拡張子を.pdfにしてあげてください。

つまり表示するためのサーブレットを
DownloadServlet.javaとするとき
web.xmlで
DownloadServlet.classに対し
DownloadServlet.pdfをマッピングして
ブラウザで呼び出す場合に
DownloadServlet.pdf
を指定するのです

そうすることによって可能になったはずです。
てん
会議室デビュー日: 2007/04/06
投稿数: 3
投稿日時: 2007-04-24 15:07
IIJIMASさん、あすかさんありがとうございました。

あすかさんの言われたとおりに試してみたらできました。
過去ログを調べたらあすかさんが同じような質問をしておられましたね。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=32495&forum=12&start=8
きちんと調べておらずお手数をおかけしました。

ただ、PDFのファイル名がサーブレット名になってしまうのだけは直せません。
Strutsを利用して画面遷移を行っているのですが、Strutsを利用している場合は
できないのでしょうか?
あすか
ぬし
会議室デビュー日: 2006/07/12
投稿数: 309
投稿日時: 2007-04-24 15:33
引用:

ただ、PDFのファイル名がサーブレット名になってしまうのだけは直せません。


これは想像ですが
マッピングをDownloadSerlvlet.pdfにするのではなく
*.pdfにしてはどうでしょうか。
そしてダウンロード時にPDFファイル名を使って呼び出してやるのです。
たぶん上手くいくんじゃないかと。

引用:

Strutsを利用して画面遷移を行っているのですが、Strutsを利用している場合は
できないのでしょうか?


何を使っても結果は同じです。
1

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