测试版本:TongWeb 7.0.4.9_M11
官方手册说明:在 TongWeb 上部署应用时,建议根据应用包的大小来选择部署方式。1GB 以下的优先使用管理控制台部署;1GB 以上的推荐使用自动部署(注:建议使用目录部署源)。
现象:1. 上传超过 1G 的 war 包,速度很慢

- 提示文件上传成功,点击开始部署,提示错误,/temp/upload 目录下没有文件



判断:TongWeb 7 不支持 1G 以上的文件上传
原因:控制台上传部署包时,Upload Servlet 硬编码调用 ServletFileUpload.setSizeMax(1073741824L),
超过 1GB 直接返回 "upload file size cannot exceed 1G"。
applications/console/WEB-INF/classes/com/tongweb/console/deployer/controller/Upload.class
java
ServletFileUpload sfu = new ServletFileUpload(dfif);
sfu.setSizeMax(1073741824L);
java
FileUploadException e;
try {
fileList = sfu.parseRequest(new ServletRequestContext(request));
} catch (FileUploadException var25) {
e = var25;
if (e instanceof FileUploadBase.SizeLimitExceededException) {
if (null != jsonp && !"".equals(jsonp)) {
out.println("<script type='text/javascript' id='" + jsonp + "'>parent." + jsonp + "({statusText:'upload file size cannot exceed 1G'});setTimeout(function(){delete parent." + jsonp + ";var s=document.getElementById('" + jsonp + "');s.parentNode.removeChild(s);},50);</script>");
} else {
out.println("upload file size cannot exceed 1G");
}
return;
}
e.printStackTrace();
}
其他相关:http通道参数设置
POST********请求最大字节数:POST请求允许的最大字节数,默认2MB。
maxPostSize 只在容器需要从 POST 请求体里解析表单参数(request.getParameter() 等,且 Content-Type 为 x-www-form-urlencoded)时才检查。普通文件上传/流式读取请求体根本不经过这段代码。
