[FileUpload] Problème avec FileUpload
Salut tout le monde,
Je voulais ajouter l'option d'upload à mon application alors j'ai ajouter le tag <html:file> comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <html:form styleId="ajouterFile" action="/ajouterFile?method=upload" method="post">
<fieldset>
<legend>Ajouter un fichier</legend>
<TABLE width="100%">
<TR>
<TD width="20%">Choisir un fichier</TD>
<TD width="5%">:</TD>
<TD width="50%"><html:file styleId="file" property="file" /></TD>
<TD width="15%"><html:submit property="ajouterFile" value="Ajouter" ></html:submit></TD>
</TR>
</TABLE>
</fieldset>
</html:form> |
et j'ai créé un formBean "UploadFileForm" associé comme cela:
Code:
1 2 3 4 5 6 7 8 9 10 11
| public class UploadFileForm extends BaseForm {
private String file;
public FormFile getFile() {
return file;
}
public void setFile(FormFile file) {
this.file = file;
}
} |
Puis j'ai créé mon action qui ne fait rien juste pour tester le passage de la valeur du <html:form> à mon FormBean :
Code:
1 2 3 4 5 6
| public class UploadFileAction extends DispatchAction implements DBConstants {
public ActionForward upload(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
return mapping.findForward("success");
} |
quand j'execute tout cela il me sorte cette exception :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| java.lang.IllegalArgumentException: Cannot invoke ma.gov.tax.simplis.view.forms.UploadFileForm.setFile - argument type mismatch
org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:1778)
org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:1759)
org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1648)
org.apache.commons.beanutils.PropertyUtilsBean.setProperty(PropertyUtilsBean.java:1677)
org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1022)
org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:467)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:818)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:194)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
ma.gov.tax.simplis.view.filters.forms.FormsFilter.doFilter(FormsFilter.java:72)
ma.gov.tax.simplis.view.filters.security.AuthorizationFilter.doFilter(AuthorizationFilter.java:73) |
j'ai regardé les FAQ les tuto et je n'ai rien trouver de bizar dans mon code et je n'arrive pas à avancer alors je demande votre aide pour résoudre ce prob Merci d'avance