spring webflow 1.0とstruts 1.3を使用してファイルをアップロードする際に問題があります。Struts - ファイルのアップロード
JSPは、このようなものです:フォームはこのようなものである
<html:form action="/flowAction" method="post" enctype="multipart/form-data">
<!-- snip -->
<html:file property="file" name="attachDocumentsForm" size="50"/>
<!-- snip -->
</html:form>
:今
public class AttachDocumentsForm extends SpringBindingActionForm {
// note, SpringBindingActionForm extends struts' ActionForm
private FormFile file;
//snip
}
、私の問題は、私は、フォームを送信すると、file
フィールドは常にnull
であるということです。フォーム上の他のフィールドは正しく記入されており、RequestContext
を調べると、そこにあるデータ構造の一部が深く埋もれていることがわかります。ここで
は私が添付ファイルで取得することができます恐ろしく醜い方法です:
// 'context' is the RequestContext
ServletExternalContext servletExternalContext = (ServletExternalContext) context.getExternalContext();
ActionForm form = (ActionForm) servletExternalContext.getRequest().getAttribute("actionForm");
FormFile file = (FormFile) form.getMultipartRequestHandler().getFileElements().get("file");
私は、フォーム上のMultipartRequestHandler
がnull
であることに気付きました、と私は、これはの一部である可能性がありますことを疑います問題は、私は役に立たないのCommonsMultipartRequestHandler
のインスタンスでそれを投入しようとしました。
file
フィールドに正しく入力するにはどうすればよいですか?
あなたは(たFormFile)form.getFile()を使用して、ActionFormのアクセサからファイルを取得することはできませんでしょうか? –