struts2文件上传

发布于 2021-11-29 13:20:29 字数 2771 浏览 913 评论 5

struts2在做文件上传是,当超过限制的上传文件总大小时,直接与服务器断开连接了,后台也没有报错,怎么回事啊?tomcat7.0的服务器,6.0试了也是这样。
package com.eg.action;

import java.io.File;
import java.io.IOException;
import java.util.List;

import org.apache.commons.io.FileUtils;
import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

public class FileuploadAction extends ActionSupport {

	private List<File> upload;
	private List<String> uploadContentType;
	private List<String> uploadFileName;

	public List<File> getUpload() {
		return upload;
	}

	public void setUpload(List<File> upload) {
		this.upload = upload;
	}

	public List<String> getUploadContentType() {
		return uploadContentType;
	}

	public void setUploadContentType(List<String> uploadContentType) {
		this.uploadContentType = uploadContentType;
	}

	public List<String> getUploadFileName() {
		return uploadFileName;
	}

	public void setUploadFileName(List<String> uploadFileName) {
		this.uploadFileName = uploadFileName;
	}

	@Override
	public String execute()  {
		for (int i = 0; i <upload.size(); i++) {
		System.out.println("上传的文件类型:" + uploadContentType.get(i));
		System.out.println("上传的文件名:" + uploadFileName.get(i));
		 try {
			FileUtils.copyFile(upload.get(i), new File(ServletActionContext
			 .getServletContext().getRealPath("/WEB-INF/uploads"),
			 uploadFileName.get(i)));
		} catch (IOException e) {
			e.printStackTrace();
			throw new RuntimeException(e);
		}
		}
		return null;
	}
}




<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
        <!-- 限制上传的文件总大小为200M --> <constant name="struts.multipart.maxSize" value="209715200"></constant> <constant name="struts.custom.i18n.resources" value="message"></constant> <package name="default" namespace="/" extends="struts-default"> <action name="upload" class="com.eg.action.FileuploadAction"> <result name="input">/error.jsp</result> <interceptor-ref name="defaultStack"> <param name="fileUpload.maximumSize">20971520</param> <param name="fileUpload.allowedExtensions">txt,avi,doc,xml</param> </interceptor-ref> </action> </package> </struts>



如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

海之角 2021-12-04 15:38:31

设置大一点然后日志级别调debug

冷弦 2021-12-04 14:43:00

回复
我记得tomcat的配置里面好像有最大上传文件大小还是连接超时时间,设置下这个就行了

丢了幸福的猪 2021-12-04 13:39:49

springmvc劝降师还有30秒到达战场

躲猫猫 2021-12-03 22:25:47

试了,还是没有用哦,struts.xml 文件配置上传 文件总大小还是可以的!

深巷少女 2021-12-03 08:27:25

xml配置里写的上限好象只管到2m 再大要写到 struts.properties 里面

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文