2011-12-23 13 views
0

私のプロジェクト(Java SpringMVC3)では、HttpClient経由でXLSファイルを取得しました。実際のダウンロードと同じようにそのファイルをダウンロードします。ダウンロードダイアログを表示するポップアップウィンドウ。 どうすればいいですか?ローカルファイルをダウンロードするためのリンクを作成

+0

両方の回答が役に立ちました。私は最初のものを使った。 – yyy

答えて

2

ヘッダMIMEタイプを指定する方法について簡単な例です。コントローラー関数がNULLを返す必要があることを忘れないでください。以下に私のアプリケーションの実例を示します。

String filename = /* path to a file */ 

File file = new File(filename); 

response.setContentType(new MimetypesFileTypeMap().getContentType(file)); 
response.setContentLength((int)file.length()); 
response.setHeader("content-disposition", "attachment; filename=" + URLEncoder.encode(filename, "UTF-8")); 

InputStream is = new FileInputStream(file); 
FileCopyUtils.copy(is, response.getOutputStream()); 

return null; 
+0

なぜ最後の2行が必要ですか? InputStream is =新しいFileInputStream(ファイル)。 FileCopyUtils.copy(is、response.getOutputStream()); – Sridhar

1

基本的には、ダウンロードを処理し、応答のヘッダー - MIMEタイプを指定するコントローラーを実装する必要があります。ビューからそのコントローラーを起動します。ここ

は、コントローラが応答オブジェクトにファイルの内容をコピーする必要

HTTP Header Mime Type in Websphere Application Server 7

関連する問題