2009-07-08 16 views
1

Java技術を使用して静的コンテンツへの動的リンクを使用してファイル&を作成せずに、動的データをWebアプリケーションのユーザーに送信する方法を理解するのは苦労します。 (ディスク上のファイル作成を避ける主な理由はセキュリティとスピードです)動的に生成されたファイル、TomcatとJavaテクノロジをどのように提供できますか?

これは以前私がPythonで行ってきたことですが、このWebアプリケーションは保守の目的で厳密にはJava技術であることを意図しています。

Googleでいくつかの検索を行った後、私はそれ以上は取得していません。誰もこれを前にやったことがありますか、出発点として良いアイデアを持っていますか?

+0

サーブレットを使用できますか?またはJSP-s? – akarnokd

+0

JavaベースのWebテクノロジは、あなたが示唆することが他にもある場合は実際には問題ありません。 – dborba

答えて

4

サーブレットから任意の種類のコンテンツタイプを出力できます。ヘッダーを正しく設定して、送信したいコンテンツをリクエストの本文にダンプします。

response.setContentType("application/vnd.ms-excel"); 
response.setHeader("Content-Disposition", "attachment;filename=" + file); 
// generate the content and send it to response.getOutputStream() 

これは、コンテンツタイプをExcelファイルに設定し、ブラウザにファイルのダウンロードを強制します。

ボーナスとして、サーブレットに特定のパスをリッスンし、実際のファイル名でリンクを設定するように指示できます。

<servlet-mapping> 
    <servlet-name>Export</servlet-name> 
    <url-pattern>/export/*</url-pattern> 
</servlet-mapping> 

<a href="<%=request.getContextPath()%>/export/Myreport.xls"> 
    Myreport.xls 
</a> 
+0

これは私の欲しいもののようです。私はオフィスに戻ってきたら試してみましょう。 – dborba

+0

これで幸運! –

+0

完璧に動作します - ありがとう! – dborba

関連する問題