已经设置上传最大为10M了,可还是出错struts.xml:
<struts>
<include file="struts-default.xml"/>
<constant name="struts.locale" value="zh_CN"/>
<constant name="struts.i18n.encoding" value="GBK"/>

    <package name="fileUploadDemo" namespace="/admin" extends="struts-default" > 
        <action name="fileUpload" class="com.zjm.cctw66.upload.web.action.FileUploadAction" > 
            <interceptor-ref name="fileUpload">
             <param name="maximumSize">10485760</param>
                <param name="allowedTypes">
                 image/bmp,image/png,image/gif,image/jpeg,image/pjpeg,image/x-png
                </param>
            </interceptor-ref> 
            <interceptor-ref name="defaultStack" />            
            <result name="input">/admin/fileUpload.jsp</result> 
            <result name="success">/admin/ShowUpload.jsp</result> 
        </action> 
    </package> 
</struts>控制台报错:
2010-2-10 16:20:28 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Unable to find 'struts.multipart.saveDir' property setting. Defaulting to javax.servlet.context.tempdir
2010-2-10 16:20:28 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
警告: Unable to parse request
org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (2769938) exceeds the configured maximum (2097152)
        at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:914)
        at org.apache.commons.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:331)
        at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:349)
        at org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest.parse(JakartaMultiPartRequest.java:93)
        at org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper.<init>(MultiPartRequestWrapper.java:75)
        at org.apache.struts2.dispatcher.Dispatcher.wrapRequest(Dispatcher.java:708)
        at org.apache.struts2.dispatcher.FilterDispatcher.prepareDispatcherAndWrapRequest(FilterDispatcher.java:327)
        at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:367)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
        at java.lang.Thread.run(Thread.java:619) 2010-2-10 16:20:29 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
警告: the request was rejected because its size (2769938) exceeds the configured maximum (2097152) 2010-2-10 16:20:29 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
警告: the request was rejected because its size (2769938) exceeds the configured maximum (2097152)

解决方案 »

  1.   

    不会 Struts 2据悉 Struts 2 中有个 struts.properties 文件,里面有个 struts.multipart.maxSize 值,你设置看看是否可行?在 struts.xml 中增加应该也可以的吧:<constant name="struts.multipart.maxSize" value="10485760"/>
      

  2.   

    这个不是配置文件的问题,而是HTTP协议的问题,实际上上传文件大于5MB就特别容易出现问题了,如果有大文件上传就考虑搭建FTP服务器吧。
      

  3.   

      呵呵。。你可以看一下struts2 的核心包下的default.properties文件里有默认的大小设置
        struts.multipart.maxSize=2097152 
      

  4.   

    我也出现过类似问题,apache的upload组件分段上传的,图片文件大于60k就出错。
      

  5.   

    光在struts.xml里改应该不行,我们以前做项目的时候都是在包里改的。
      

  6.   


    没看过 也没用过struts2 不过以前写例子的时候 没记得上传的时候出现过什么毛病 或许我上传文件太小了吧..
      

  7.   

    我以前用struts1.x的时候也是改 包里。 以前找配置 也不管用 
    struts2不知道。
      

  8.   

    在struts.xml中设置
    <constant name="struts.multipart.maxSize"  value="314572800"></constant>  <!-- 允许300M -->
    可以允许上传300M的呢!我试了下,上传了个202M的电影,竟然上传成功了!
      

  9.   

    你太厉害了,我这么设置怎么不对呢~~~即使设置了struts.multipart.maxSize也不行