struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bryan Hunt <ad...@revoltingdigits.com>
Subject struts file upload strange error
Date Mon, 03 May 2004 20:10:03 GMT
Hi there list,
I have been trying to get the most simple file upload example working with
and have been receiving a strange error message that I just can't seem 
to shake.

Here is the basics of my action form
snip=
public class ImageUploadForm extends ActionForm {
    // --------------------------------------------------------- 
Instance Variables
    /** imageFile property */
    protected FormFile file;

    // --------------------------------------------------------- Methods

    public ActionErrors validate(
        ActionMapping mapping,
        HttpServletRequest request) {
           
        if(file == null){
            System.out.println("file is empty");
        }
    return null;
    }

    public FormFile getFile() {
        return file;
    }

    public void setFile(FormFile file) {
        this.file = file;
    }
=snip

Here is the basics of the action
snip=
public ActionForward execute(
      blah) {
            System.out.println("at least i managed to get called");
        throw new UnsupportedOperationException("Generated method 
'execute(...)' not implemented.");
    }
=snip

Here is the basics from my struts config file
snip=
    <form-bean name="imageUploadForm" 
type="ie.jestate.struts.form.ImageUploadForm">
            <form-property name="file" 
type="org.apache.struts.upload.FormFile" />
        </form-bean>
<action
            attribute="imageUploadForm"
            input="/form/imageUpload.jsp"
            name="imageUploadForm"
            path="/imageUpload"
            type="ie.jestate.struts.action.ImageUploadAction"
            scope="request"
            validate="true"
            >
            <forward name="imageuploadsuccess" 
path="/form/imageUpload.jsp" />
        </action>
=snip

Here is the jsp file

snip=
<%@ page language="java"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<html>
    <head>
        <title>JSP for imageUploadForm form</title>
    </head>
    <body>
        <html:form action="/imageUpload.do" type="imageUploadForm" >
            File :
              <html:file property="file"/>
            <html:submit/>
        </html:form>
    <body>
    </html>
=snip

And here is the abreviated version of the error message
snip=

*exception*

javax.servlet.ServletException: BeanUtils.populate
	org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1254)
	org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)*

cause mère*

java.lang.IllegalArgumentException: argument type mismatch
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
=snip

I have tried changing the type to text and the type to String in 
the form and that works but use this FormFile class and everything 
seems to go fubar. 


It never even gets to call the action , instead it generates this error 
message ,
but the setters and getters are right and the variable is public, this 
only happens
with the FormFile. All the struts stuff is in my classpath as is 
commons-fileupload-1.0.jar.

Anyone got any idea what the hell I'm doing wrong ... I'm starting to 
suspect this
could be a struts bug cause everything looks straightforward enough.

--B

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message