Salut tout le monde,

Je voulais ajouter l'option d'upload à mon application alors j'ai ajouter le tag <html:file> comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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