ファイルアップロードのエラー

複数ファイルのアップロードでエラー(配列にアノテーションはつけられない?)
watawata日記

この話ですが、確かにエラーになりますね。
チュートリアルでリクエストパラメータのキャプチャを採ると、以下のようになっています。3つのボックスの最初の2つにアップロードした例。

-----------------------------121352813313943
Content-Disposition: form-data; name="formFile"; filename="aaa.txt"
Content-Type: text/plain

aaaaaa
-----------------------------121352813313943
Content-Disposition: form-data; name="formFiles[0]"; filename="bbb.txt"
Content-Type: text/plain

bbbbb
-----------------------------121352813313943
Content-Disposition: form-data; name="formFiles[1]"; filename=""
Content-Type: application/octet-stream

つまりformFiles[1]は空で必ず飛んできて、これが配列の2番目に空ファイル名&サイズゼロバイトで入るので問題のエラーになります。
これ、以前にS2Strutsだったか、Struts1.0.2+commons fileuploadだったかで経験があります。
そのときの調査結果は忘れてしまいましたが、サイズがゼロバイトのときはアップロードされていないものとみなす、という処理を追加した記憶があります。つまりValidatorに頼らずに、得られたFormFileをつど検査するイメージ。

		for (FormFile file : formFiles) {
                        if (file.getFileSize() > 0) {
			  upload(file, messages);
                         }
		}

SAStrutsの今回もそうすれば動くと思いますが、根本的にそれでよかったかどうかちょっと自信はないです。
4/1追記:出勤途中携帯で確認したら、wyukawaさんの指摘は最初のボックスだけ指定時でしたね。別件かも