我在使用大于2GB的文件上传HTTP文件时遇到问题.服务器和客户端都是64位,因此从系统角度来看,必须没有2GB的限制.我做了以下事情:
我正在使用apache commons文件上传.我还尝试使用ServerFileUpload setMaxFileSize方法设置最大文件大小.
我能够上传小于2GB的文件(我成功尝试了1.88GB文件).请指导我,我在这里错过了什么?
更具体的说,ServletFileUpload.parseRequest方法在上传大文件时返回0 FileItems
这是代码片段:
if (isMultipartForm()) {
try {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(SIZE_THRESHOLD);//SIZE_THRESHOLD = 4MB
ServletFileUpload upload = new ServletFileUpload(factory);
//upload.setFileSizeMax(3000000000L); Tried this too
upload.setProgressListener(progressListener);
items = upload.parseRequest(request);
if(items != null && items.size() == 0)
return new CommandResultSet(false, "NoItemsFoundInRequest");
return new CommandResultSet(true, "" + ( (items!=null) ? items.size() : ""));
} catch(FileUploadException e) {
e.printStackTrace();
System.out.println("Exception in MultipartFormManager. Can not parse …Run Code Online (Sandbox Code Playgroud)