0

次の ActionForm を持つ Struts 1 アプリケーションがあります。

import org.apache.struts.upload.FormFile;

public class uploadedFileForm {

public FormFile theFile;

    public FormFile getTheFile() {
        return theFile;
    }

    public void setTheFile(FormFile theFile) {
        this.theFile = theFile;
    }
}

私の JSP ページには次の形式があります。

<html:form action="/myAction" enctype="multipart/form-data">
<html:file property="theFile" onkeypress="return false;" />
</html:form>

フォームを Struts アクションに送信すると、すぐに次のエラー メッセージが表示されます。

org.apache.commons.beanutils.ConversionException: Could not convert java.lang.String to org.apache.struts.upload.FormFile 

アクションの先頭にいくつかのデバッグ ステートメントを追加しようとしましたが、どれも出力されませんでした。これは、私のアクションに到達する前に Struts がこのエラーをスローしていることを示しているようです。

このエラー メッセージの原因について何か提案はありますか?

4

1 に答える 1

2

問題は<html:form>タグに関連していました。

method="post"タグにはとenctype="multipart/form-data"属性の両方が必要です。

enctype="multipart/form-data"私の実際のフォームはもっと複雑で、プロパティがありませんでした。私がそれを追加したとき、すべてがうまくいきました。

于 2010-02-19T21:02:33.197 に答える