日期:2014-05-18  浏览次数:20569 次

关于struts框架上传文件大小的问题!!!
如果上传的小于设置的大小,则一切正常;如果大于设置,不仅本次上传失败,而且无法重新上传,重新上传不管多大都不行!必须要重启tomcat,这是怎么回事,怎么解决啊?还有,我想在Jquery中限制文件大小,该怎么做?
struts 框架 jquery

------解决方案--------------------
楼主正解,我觉得是单例导致的。。
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

以前用struts2的时候,貌似最大就支持2M。。。。
恩,默认是2M,我上传超过2M的失败很正常,但是我之后我就无法重新上传了,必须重启tomcat才恢复正常,真不明白啊!!!

从楼主的描述来看楼主应该是用了spring来管理action,如果是的话楼主检查下你action的scope是不是没有设置成prototype默认是singleton的就会出现你一次报错,后面的都是不能进到这个action了。前台判断file的文件大小的js代码如下

var file=document.getElementById("file");
if(navigator.userAgent.indexOf("MSIE")!=-1){//IE下要用ActiveX控件
   var fos=new ActiveXObject("Scripting.FileSystemObject");
   var f=fos.GetFile(file.value);
   alert(f.size);
}else{//firefox和google的直接用
   alert(file.files[0].size);
}
单例模式。我明白了!!!谢谢!检测文件大小的代码,其中谷歌火狐的可以了,但是IE的显示无法创建对象,这个怎么回事?

IE的要用activeX控件如果你ie设置了禁用当然无法创建对象了