|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
java.lang.Objectorg.apache.commons.fileupload.FileUploadBase
ファイルアップロードを処理するための高レベルAPIです。
このクラスは RFC 1867
によって規定された multipart/mixed エンコーディングタイプを使用して
HTMLウィジェットから送信された複数のファイルを処理します。
parseRequest(HttpServletRequest) を使用して、HTMLウィジェットから送られるデータを示す
FileItem のリストを取得します。
個々のパーツが持つデータを保持する方法は、使用されるファクトリによって、 メモリ上やディスク上などになります。
| 入れ子クラスの概要 | |
static class |
FileUploadBase.InvalidContentTypeException
リクエストが multipart リクエストでない場合に投げられます。 |
static class |
FileUploadBase.SizeLimitExceededException
リクエストのサイズが設定された最大サイズを超えた場合に投げられます。 |
static class |
FileUploadBase.UnknownSizeException
リクエストのサイズが明示されていない場合に投げられます。 |
| フィールドの概要 | |
static String |
ATTACHMENT
ファイルアタッチメントの場合の Content-disposition の値。 |
static String |
CONTENT_DISPOSITION
HTTP content disposition のヘッダ名。 |
static String |
CONTENT_TYPE
HTTP content type のヘッダ名。 |
static String |
FORM_DATA
フォームデータの場合の Content-disposition の値。 |
private String |
headerEncoding
パーツのヘッダを読み込む際に使用されるエンコーディング。 |
static int |
MAX_HEADER_SIZE
ヘッダのパースの際に読み込む最大長(1024バイト)。 |
static String |
MULTIPART
HTTP content type ヘッダの一部。 |
static String |
MULTIPART_FORM_DATA
multipart forms の場合の HTTP content type ヘッダ(の値)。 |
static String |
MULTIPART_MIXED
複数アップロードの場合の HTTP content type ヘッダ(の値)。 |
private long |
sizeMax
アップロードされるファイルに許可する最大サイズ。 |
| コンストラクタの概要 | |
FileUploadBase()
|
|
| メソッドの概要 | |
protected FileItem |
createItem(Map headers,
boolean isFormField)
新規 FileItem インスタンスを生成します。
|
protected String |
getFieldName(Map headers)
Content-disposition ヘッダからフィールド名を取得します。
|
abstract FileItemFactory |
getFileItemFactory()
ファイルアイテムを生成する際に使用するファクトリクラスを返します。 |
protected String |
getFileName(Map headers)
Content-disposition ヘッダからファイル名を取得します。
|
protected String |
getHeader(Map headers,
String name)
渡されたマップの中から指定された名称のヘッダの値を取得します。 |
String |
getHeaderEncoding()
個々のパーツのヘッダを読み込む際に使用されるキャラクタエンコーディングを取得します。 |
long |
getSizeMax()
アップロードが許可される最大サイズを返します。 |
static boolean |
isMultipartContent(javax.servlet.http.HttpServletRequest req)
リクエストが multipart content を含むかどうかを判断するユーティリティメソッドです。 |
protected Map |
parseHeaders(String headerPart)
header-part をパースし、キー/値 のペアを返します。
|
List |
parseRequest(javax.servlet.http.HttpServletRequest req)
RFC 1867 の仕様に従って multipart/form-data のストリームを処理します。
|
abstract void |
setFileItemFactory(FileItemFactory factory)
ファイルアイテムを生成する際に使用するファクトリクラスを設定します。 |
void |
setHeaderEncoding(String encoding)
個々のパーツのヘッダを読み込む際に使用されるキャラクタエンコーディングを設定します。 |
void |
setSizeMax(long sizeMax)
アップロードが許可される最大サイズを設定します。 |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
public static final String CONTENT_TYPE
public static final String CONTENT_DISPOSITION
public static final String FORM_DATA
public static final String ATTACHMENT
public static final String MULTIPART
public static final String MULTIPART_FORM_DATA
public static final String MULTIPART_MIXED
public static final int MAX_HEADER_SIZE
private long sizeMax
private String headerEncoding
| コンストラクタの詳細 |
public FileUploadBase()
| メソッドの詳細 |
public static final boolean isMultipartContent(javax.servlet.http.HttpServletRequest req)
req - 評価対象となるサーブレットリクエスト。null は受け付けません。
true リクエストが multipart だった場合;
false それ以外の場合。
public abstract FileItemFactory getFileItemFactory()
public abstract void setFileItemFactory(FileItemFactory factory)
factory - ファイルアイテムを生成するファクトリクラス。
public long getSizeMax()
setSizeMax(long)public void setSizeMax(long sizeMax)
sizeMax - 許可されるバイト単位の最大サイズ。-1 の場合には上限なし。
getSizeMax()public String getHeaderEncoding()
null の場合、プラットフォームの デフォルトエンコーディングを使用します。
public void setHeaderEncoding(String encoding)
null の場合、プラットフォームの デフォルトエンコーディングを使用します。
encoding - パーツのヘッダを読み込む際に使用されるエンコーディング。
public List parseRequest(javax.servlet.http.HttpServletRequest req)
throws FileUploadException
multipart/form-data のストリームを処理します。
ファイルがディスク上に保持される場合には getRepository()
によってそのパスを取得することができます。
req - 処理対象となるサーブレットリクエスト。
FileItem インスタンスのリスト。
送信された順番に並びます。
FileUploadException - リクエストの読み込み、処理またはファイルの保持にて 問題が発生した場合。
protected String getFileName(Map headers)
Content-disposition ヘッダからファイル名を取得します。
headers - HTTPリクエストヘッダの情報を内部に持つ Map 。
encapsulation のファイル名。
protected String getFieldName(Map headers)
Content-disposition ヘッダからフィールド名を取得します。
headers - HTTPリクエストヘッダの情報を内部に持つ Map 。
encapsulation のフィールド名。
protected FileItem createItem(Map headers,
boolean isFormField)
throws FileUploadException
FileItem インスタンスを生成します。
headers - HTTPリクエストヘッダの情報を内部に持つ Map 。
isFormField - このアイテムがファイルではなくフォームフィールドかどうか。
FileItem インスタンス。
FileUploadException - エラーが発生した場合。
protected Map parseHeaders(String headerPart)
header-part をパースし、キー/値 のペアを返します。
同名のヘッダが複数あった場合、 その値はカンマで区切られたリストで格納されます。
headerPart - 現在の encapsulationの header-part 。
Map 。
protected final String getHeader(Map headers,
String name)
headers - HTTPリクエストヘッダの情報を内部に持つ Map 。
name - データの取得対象となるヘッダの名称。
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||