◆JSP◆ (583レス)
◆JSP◆ http://medaka.5ch.net/test/read.cgi/php/984840356/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
374: nobodyさん [] 2009/02/26(木) 15:41:13 ID:M1Max02p すみませぬ FOPのライブラリで、XML+XSLで動的にPDFを生成して出す仕組みを作っています。 フォームにファイルを指定させ、ボタンを押すとJSPが呼び出され、 JSPの構文内でFOPを実行し、出てきたPDFのストリームを、ブラウザで表示するようにしたいのです。 JSPではHTMLの形で整形して出すしかやったことないのですが、 HTML以外のファイル(PDF)を返す方法ってありますか? 可能であれば、そのファイルをブラウザが「開く」「名前をつけて保存」のダイアログをいちど出す形で返す方向にしたいです。 アドバイスお願いしまする http://medaka.5ch.net/test/read.cgi/php/984840356/374
376: nobodyさん [] 2009/02/26(木) 16:07:29 ID:M1Max02p >>375 サーバーサイドのプログラムは初心者なもので。 Servletでも良い方法があれば教えてください。 http://medaka.5ch.net/test/read.cgi/php/984840356/376
378: nobodyさん [] 2009/02/26(木) 19:18:47 ID:M1Max02p >>377 ありがとうございます。とりあえずJSPでやってみる方向で努力しています。 (ダメならServletのほうを研究してみます) 3行目をヒントに、とりあえずサーバーにpdfの一時ファイル(temp.pdf)を作ってから、それを返すロジックをやってみているのですが・・・ <% /* 〜fopでtemp.pdfを吐き出す処理〜 */ response.setContentType("application/pdf"); response.addHeader("content-disposition","attachment; filename=temp.pdf"); OutputStream os=response.getOutputStream(); FileInputStream fis=new FileInputStream("temp.pdf"); int len=0; while(fis.read()!=-1)len++; byte b[]=new byte[len]; fis.read(b); os.write(b); %> 目的どおり、ボタンを押すと「開く」「ダウンロード」を選択するダイアログは出てくれるのですが、 出てきたデータが化けているようで開けないです。データそのもののバイト数は元ファイルと同じです。 文字コードが違うとかそのような理由なのでしょうか? pdfのようなバイナリファイルの場合、一番上での<%@ page language="java" pageEncoding="UTF-8"...といった部分はどのように指定するのが良いですか? http://medaka.5ch.net/test/read.cgi/php/984840356/378
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.020s