当前位置: 首页 > news >正文

处理报错: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

重试,功能正常,问题解决

理论上不应该一次性把请求的文件跟表单一起提交,图省事是会这样

http://www.jsqmd.com/news/641666/

相关文章:

  • 国内优质化妆培训学校大盘点 - 品牌测评鉴赏家
  • 论文工具客观红榜:主流工具全维度对比
  • 如何利用 Provide 实现全局主题切换?响应式状态注入的实战技巧
  • 基于 Java 和高德开放平台的 WebAPI 集成实践 —— 以搜索 POI2.0 为例
  • 全网最全MapTR详解!!!
  • 遵义化妆培训学校怎么选?实地探访后的几点观察与建议 - 品牌测评鉴赏家
  • 如何用参数解构在函数入口处直接提取对象属性
  • 2026美妆求学指南:全国优质化妆培训机构大盘点 - 品牌测评鉴赏家
  • 脂溢性脱发救星!这家纹发机构真的绝了 - 品牌测评鉴赏家
  • uni-app怎么做类似于微博的新消息气泡 uni-app角标动画效果实现【代码】
  • 引入注意力机制的YOLOv5小目标检测方法
  • 从手动压枪到智能补偿:罗技鼠标宏如何革新绝地求生射击体验
  • uBlock Origin终极指南:打造零广告浏览体验的完整教程
  • 【手势识别大模型实战生死线】:2026奇点大会验证的8种边缘端部署失败场景及实时修复清单
  • 脱发男士必看!告别头顶危机的新潮秘籍 - 品牌测评鉴赏家
  • 华为云CentOS 7上5分钟搞定Ollama GPU版+Docker部署(附qwen模型实测)
  • 结合自适应锚框机制的YOLOv5优化方法:从原理到实践全解析
  • 视频批量去头去尾工具使用说明:批量裁剪视频开头结尾(秒/毫秒),支持遍历子目录与保持目录结构
  • 关系型数据库核心概念与 MySQL 操作
  • CSS 背景图滑动切换:实现无闪烁、方向可控的平滑轮播效果
  • C#进阶知识 反射
  • 多模态大模型量化压缩技术白皮书(2024Q2权威实测报告:12种算法在COCO-VQA/ScienceQA双基准上的吞吐-精度帕累托前沿)
  • 实战指南:用Markdown Viewer浏览器扩展高效管理技术文档的完整方案
  • 视频帧图片提取工具使用说明:按时间间隔/帧间隔/关键帧/指定时间点/首尾中间帧批量提取,支持并行与保持目录结构
  • 秃头/光头别慌!植发与纹发新思路 - 品牌测评鉴赏家
  • 四轮差速移动机器人圆弧正弦直线轨迹跟踪
  • IDEA如何使用教育网账号激活
  • 脱发自救指南:治疗方法与靠谱机构大揭秘 - 品牌测评鉴赏家
  • 解决 Bookmarklet 中 %0A 换行符导致的跨环境执行失败问题
  • 2026执医技能操作培训机构参考:3家机构客观解析 - 品牌测评鉴赏家