【Struts2】FileUploadInterceptorを利用して複数のファイルをアップロード

Struts2のFileUploadでちょっとハマったポイント。

まず、FileUploadのインターセプトを利用する為の基本的なコード。

Action:

struts.xml:

HTML Form:

基本的にはこんな感じ。

で、複数のファイルの場合、こんな感じで配列で対応してもOK
(XMLとJSPは省略)

ですが、配列にした場合、1箇所目のファイルをnull・2箇所目のみアップロードした時、

配列にキューされていくだけなので、表示の際に1箇所目はなし・2箇所目に表示、ってことができない。

で、これをやりたい場合にはこんな風になる。

XMLとJSPは省略。

File型のmyFileっていう変数は、好きな名前をつけられるわけですが、

fileNameとcontentTypeはStruts2が自動で認識してくれる特殊な名前なわけです。

そして、File型の変数を複数定義したりして、fileName・contentTypeも明示的に複数定期議する必要がある場合

(File型の変数名)FileName
(File型の変数名)ContentType

とすることで、明示的に複数定義することができます。

[tmkm-amazon]4839928444[/tmkm-amazon]

[tmkm-amazon]4797338210[/tmkm-amazon]

コメントを残す