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 回答