public class FileDownload extends HttpServlet
サーバー管理ファイルをダウンロードする場合に使用する、サーブレットです。 引数(URL)に指定のファイルをサーバーからクライアントにダウンロードさせます。 file には、サーバーファイルの物理アドレスを指定します。相対パスを使用する場合は、 コンテキストルート(通常、Tomcatでは、G:\webapps\dbdef2\ など)からのパスと判断します。 name には、クライアントに送信するファイル名を指定します。ファイル名を指定しない場合は、 サーバーの物理ファイルのファイル名が代わりに使用されます。 日本語ファイル名は、すべて UTF-8化して処理します。指定するファイルに日本語が含まれる 場合は、URLエンコードを行ってください。 基本的にはContent-disposition属性として"attachment"が指定されます。 但し、引数に inline=true を指定することで、Content-disposition属性に"inline"が指定されます。 また、システムリソースのUSE_FILEDOWNLOAD_CHECKKEYをtrueに指定することで、簡易的なチェックを 行うことができます。 具体的には、これを有効にすると、file属性の値から計算されるMD5チェックサムと、"key"という パラメーターに指定された値が一致した場合のみダウンロードが許可され、keyが指定されていない、 または値が異なる場合はダウンロードエラーとなります。 一般的なサーブレットと同様に、デプロイメント・ディスクリプタ WEB-INF/web.xml に、 servlet 要素と そのマッピング(servlet-mapping)を定義する必要があります。 <servlet> <servlet-name>fileDownload</servlet-name> <servlet-class>org.opengion.hayabusa.servlet.FileDownload</servlet-class> </servlet> <servlet-mapping> <servlet-name>fileDownload</servlet-name> <url-pattern>/jsp/fileDownload</url-pattern> </servlet-mapping> 一般には、http://:ポート/システムID/jsp/fileDownload?file=サーバー物理ファイル&name=ファイル名 形式のURL でアクセスします。 5.9.25.0 (2017/10/06) クラウド上のPaaSでオブジェクトストレージを利用する際は以下のシステムリソースを設定してください。 CLOUD_STORAGE,CLOUD_STORAGE_CONTAINER plugin/cloud内のクラスを利用してファイルアップロード(FileUploadタグ)、ダウンロード(FileDownloadサーブレット)をAPI経由で行います。 プラグインが利用するjarファイルの配置は必要です。 5.8.1.0 (2014/11/07) forwardでアクセスする場合はファイル名の文字コード変換が不要なため、useStringConvert=falseの 引数を与えてください。(falseとしない場合は日本語ファイル名等でエラーが発生します)
3.8.1.1 (2005/11/21) 新規追加 |
5.9.25.0 (2017/10/06) クラウド対応 |
コンストラクタと説明 |
---|
FileDownload()
デフォルトコンストラクター
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
doGet(HttpServletRequest request,
HttpServletResponse response)
GET メソッドが呼ばれたときに実行します。
|
void |
doPost(HttpServletRequest request,
HttpServletResponse response)
POST メソッドが呼ばれたときに実行します。
|
doDelete, doHead, doOptions, doPut, doTrace, getLastModified, service, service
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, init, log, log
public FileDownload()
6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor. |
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException
doGet
クラス内 HttpServlet
request
- HttpServletRequestオブジェクトresponse
- HttpServletResponseオブジェクトServletException
- サーブレット関係のエラーが発生した場合、throw されます。java.io.IOException
- 入出力エラーが発生したとき3.8.1.2 (2005/12/19) 半角カナ-全角カナ変換機能の追加 |
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException
doPost
クラス内 HttpServlet
request
- HttpServletRequestオブジェクトresponse
- HttpServletResponseオブジェクトServletException
- サーブレット関係のエラーが発生した場合、throw されます。java.io.IOException
- 入出力エラーが発生したとき5.3.2.0 (2011/02/01) 日本語ファイル名が正しく処理できないバグを修正 |
5.3.4.0 (2011/04/01) IEでファイルが正しくダウンロードできないバグを修正 |
5.3.5.0 (2011/05/01) ファイルダウンロードチェックキー対応 |
5.3.6.0 (2011/06/01) ファイルダウンロードはattachmentに変更(ダウンロードダイアログを出す) |
5.3.8.0 (2011/08/01) ファイル名指定でIEの場合、URLエンコードすると途中で切れるため(IE7のバグ)、Shift_JIS(WIndows-31J)で直接指定する。 |
5.3.9.0 (2011/09/01) 引数にinline=trueを指定することで、インライン表示が出来るように対応 |
5.7.1.2 (2013/12/20) 日本語ファイルのIE11対応(UA変更),msg ⇒ errMsg 変更 |
5.8.1.0 (2014/11/07) forward時の文字コード変換不要対応 |
5.9.25.0 (2017/10/06) クラウドストレージからダウンロード処理を追加対応 |
Webアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.