commonfileupload同struts2使用发生的怪现象
来源:优易学  2011-1-19 12:06:49   【优易学:中国教育考试门户网】   资料下载   IT书店
  公司一个放软件的服务器,500G的硬盘塞的满满的,很多软件都是重复的,要么就是很老的版本年久不用,需要的有找不到在哪里。遂想趁着经济危机,工作不紧张的时候,做个软件清理一下硬盘,再把留下的文件加到数据库里,通过一个jsp网页显示给大家,以供搜索及下载。做好之后又想在页面上增加一个文件上传的功能,让大家上传新的文件。在网上搜索了一下,发觉有的人使用Socket直接处理文件流,有的使用上传组件,我选了一个简单实现的,使用了Common FileUpload组件,大品牌(Apache),有保证(Apahce可不像三鹿)。
  下载了最新的版本写了一个实现,发觉一个问题:当文件小于2M时,fileupload 组件的parseRequest(request)函数无法读取到输入的文件,提示list为零;当文件大于2M时,可以读到,但是日志里却提示一个Error警告,是struts2抛出的,由于我使用Servlet做的文件处理,设置了文件最大值为3G,所有虽然日志里提示错误但是文件还是传上去了。(由于在开始的时候使用Struts2和Hibernate做的分页,所以项目里使用了struts2,但是struts2本身就是默认使用FileUpload的的啊,所以我想他俩应该不会不兼容啊,但却还是有异常)
  在Struts.properties文件里加入了struts.multipart.maxSize =3G,结果只有大于3G的文件可以上传(同时提示error说文件爱你超过了大小限制,但是可以上传),小于3G的提示发现不了上传文件。我现在设置
  struts.multipart.maxSize =0,这样不管多么大小的文件都能上传了,虽然总是提示error。
  如果去除struts2的框架文件,运行良好。
  不知道为什么,希望得到指点。

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训