处理报错:org.apache.tomcat.util.http.fileupload.impl.FileCountLimitExceededException

张开发
2026/4/14 22:38:31 15 分钟阅读

分享文章

处理报错:org.apache.tomcat.util.http.fileupload.impl.FileCountLimitExceededException
今天实现上传功能时突然发现报错显示文件个数超限让AI处理结果没处理好那就只能人工介入了发现请求总共就带了两三个文件怎么会呢前端代码附上$.ajax({ url: xxx, data: formData, type: POST, processData: false, contentType: false, success: function (data) { console.log(data) }, error: function () { console.log(提交失败) } })报错现象如下org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.handleParseFailure(StandardMultipartHttpServletRequest.java:132) at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.parseRequest(StandardMultipartHttpServletRequest.java:111) at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.init(StandardMultipartHttpServletRequest.java:87) at org.springframework.web.multipart.support.StandardServletMultipartResolver.resolveMultipart(StandardServletMultipartResolver.java:112) ... Caused by: org.apache.tomcat.util.http.fileupload.impl.FileCountLimitExceededException: attachment at org.apache.tomcat.util.http.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:459) at org.apache.catalina.connector.Request.parseParts(Request.java:2650) at org.apache.catalina.connector.Request.getParts(Request.java:2536) at org.apache.catalina.connector.RequestFacade.getParts(RequestFacade.java:773) at jakarta.servlet.http.HttpServletRequestWrapper.getParts(HttpServletRequestWrapper.java:315) at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.parseRequest(StandardMultipartHttpServletRequest.java:94)跟进org.apache.tomcat.util.http.fileupload.FileUploadBase.parseRequest(RequestContext)代码看看仔细一看发现multipart解析器将所有表单字段包括普通文本字段都计算在内当总数超过服务器配置的限制时就会抛出异常那就跟进引用代码org.apache.catalina.connector.Request.parseParts(boolean)发现跟maxParameterCount和maxPartCount有关maxParameterCount默认值就很大可忽略那就是跟maxPartCount有关那这就简单了这个值可以通过配置文件配置处理server: tomcat: max-part-count: 200 # 设置最大部件数量为200重试功能正常问题解决理论上不应该一次性把请求的文件跟表单一起提交图省事是会这样

更多文章