MultipartFormData
クラスを使用してください。public class MultipartFormData extends ArrayList
このオブジェクトは、ブラウザから multipart/form-data 形式でリクエストされた データを解析し、boundary で区切られた各情報(エンティティ)をとしてリストに 保管します。
このクラスを利用する事により、ブラウザからサーバに対するファイルの
アップロードなどが簡単に実装する事ができます。
intra-mart6.1.11から、アップロードされたファイルが指定した閾値を超えた場合、 メモリ上ではなく一時ファイルに書き出し、OutOfMemoryErrorの発生を抑えることが できるようになりました。内部では Apache Commons FileUpload を利用しています。
一時ファイルは、ガベージコレクタがMultiPartFormData.Entityを解放するタイミングで 削除されます。従いまして、MultiPartFormData.Entityが解放される前にintra-martが 停止すると一時ファイルは削除されません。
一時ファイルの格納先は、デフォルトではJavaのテンポラリフォルダ(java.io.tmpdir)です。 ファイル名は upload_ランダムな文字列.tmp です。
なお、アップロードされたファイルを常にメモリ上で扱う実装と一時ファイルに書き出す実装の切り替え、 一時ファイルの格納先、一時ファイルに書き出すかどうかの閾値を設定ファイルで指定することができます。 設定ファイルは、 %ApplicationRuntime%/doc/imart/WEB-INF/classes/jp/co/intra_mart/common/aid/javaee/http/MultipartFormData.properties です。
設定ファイルの内容はMultipartFormDataResourceBundle
を参照してください。修飾子とタイプ | クラスと説明 |
---|---|
static interface |
MultipartFormData.Entity
非推奨です。
MultipartFormData.Entity インタフェースを使用してください。 |
modCount
コンストラクタと説明 |
---|
MultipartFormData(javax.servlet.ServletRequest req)
非推奨です。
|
clone, forEach, removeIf, removeRange, replaceAll, sort, spliterator
toString
parallelStream, stream
public MultipartFormData(javax.servlet.ServletRequest req) throws IOException, IllegalArgumentException
MultipartFormData.MultipartFormData(ServletRequest)
を使用してください。req が multipart/form-data で受信したリクエストではない場合、 IllegalArgumentException をスローします。
req
- サーブレットエンジンから渡されるリクエスト情報オブジェクトIOException
- リクエストデータ解析時の入出力エラーIllegalArgumentException
- 引数が不正の場合public MultipartFormData.Entity getEntity(int index)
MultipartFormData.getEntity(int)
を使用してください。
インデックスが範囲外の場合(インデックスが負または size() よりも大きい)
IndexOutOfBoundsException をスローします。
index
- 返すエンティティのインデックスpublic MultipartFormData.Entity getEntity(String name)
MultipartFormData.getEntity(String)
を使用してください。
エンティティの名前とは、フォームのコントロール名称のことです。
指定の名前を持つエンティティが複数存在する場合、その中のいずれか一つが
返されます。
該当するエンティティが存在しない場合 null を返します。
MultipartFormData.Entity.getName()
public MultipartFormData.Entity[] getEntities(String name)
MultipartFormData.getEntities(String)
を使用してください。
エンティティの名前とは、フォームのコントロール名称のことです。
該当するエンティティが存在しない場合、空の配列を返します。
MultipartFormData.Entity.getName()
public void add(int index, Object element)
MultipartFormData.add(int, Object)
を使用してください。public boolean add(Object o)
MultipartFormData.add(Object)
を使用してください。public boolean addAll(Collection c)
MultipartFormData.addAll(Collection)
を使用してください。public boolean addAll(int index, Collection c)
MultipartFormData.addAll(int, Collection)
を使用してください。public void clear()
MultipartFormData.clear()
を使用してください。public boolean contains(Object elem)
MultipartFormData.contains(Object)
を使用してください。public boolean containsAll(Collection c)
MultipartFormData.containsAll(Collection)
を使用してください。containsAll
インタフェース内 Collection
containsAll
インタフェース内 List
containsAll
クラス内 AbstractCollection
public void ensureCapacity(int minCapacity)
MultipartFormData.ensureCapacity(int)
を使用してください。ensureCapacity
クラス内 ArrayList
public boolean equals(Object o)
MultipartFormData.equals(Object)
を使用してください。equals
インタフェース内 Collection
equals
インタフェース内 List
equals
クラス内 AbstractList
public Object get(int index)
MultipartFormData.get(int)
を使用してください。public int hashCode()
MultipartFormData.hashCode()
を使用してください。hashCode
インタフェース内 Collection
hashCode
インタフェース内 List
hashCode
クラス内 AbstractList
public int indexOf(Object elem)
MultipartFormData.indexOf(Object)
を使用してください。public boolean isEmpty()
MultipartFormData.isEmpty()
を使用してください。public Iterator iterator()
MultipartFormData.iterator()
を使用してください。public int lastIndexOf(Object elem)
MultipartFormData.lastIndexOf(Object)
を使用してください。lastIndexOf
インタフェース内 List
lastIndexOf
クラス内 ArrayList
public ListIterator listIterator()
MultipartFormData.listIterator()
を使用してください。listIterator
インタフェース内 List
listIterator
クラス内 ArrayList
public ListIterator listIterator(int index)
MultipartFormData.listIterator(int)
を使用してください。listIterator
インタフェース内 List
listIterator
クラス内 ArrayList
public Object remove(int index)
MultipartFormData.remove(int)
を使用してください。public boolean remove(Object o)
MultipartFormData.remove(Object)
を使用してください。public boolean removeAll(Collection c)
MultipartFormData.removeAll(Collection)
を使用してください。public boolean retainAll(Collection c)
MultipartFormData.retainAll(Collection)
を使用してください。public Object set(int index, Object element)
MultipartFormData.set(int, Object)
を使用してください。public int size()
MultipartFormData.size()
を使用してください。public List subList(int fromIndex, int toIndex)
MultipartFormData.subList(int, int)
を使用してください。public Object[] toArray()
MultipartFormData.toArray()
を使用してください。public Object[] toArray(Object[] a)
MultipartFormData.toArray(Object[])
を使用してください。public void trimToSize()
MultipartFormData.trimToSize()
を使用してください。trimToSize
クラス内 ArrayList
Copyright © 2012 NTT DATA INTRAMART CORPORATION