zoukankan      html  css  js  c++  java
  • Tomcat异常,tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException

    Tomcat传输文件数量大小异常

    1、在使用Tomcat服务器的时候,默认是有传输数据大小的限制的。
    会报一下的错误

    2018-03-16 20:25:09.033  INFO 7260 --- [nio-8095-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet 'dispatcherServlet'
    2018-03-16 20:25:09.034  INFO 7260 --- [nio-8095-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
    2018-03-16 20:25:09.046  INFO 7260 --- [nio-8095-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 12 ms
    2018-03-16 20:25:09.067 ERROR 7260 --- [nio-8095-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (189756602) exceeds the configured maximum (10485760)] with root cause
    
    org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (189756602) exceeds the configured maximum (10485760)
        at org.apache.tomcat.util.http.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:805) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.tomcat.util.http.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:256) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.tomcat.util.http.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:280) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.catalina.connector.Request.parseParts(Request.java:2869) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.catalina.connector.Request.parseParameters(Request.java:3216) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.catalina.connector.Request.getParameter(Request.java:1137) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:381) ~[tomcat-embed-core-8.5.28.jar:8.5.28]
        at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:75) ~[spring-web-5.0.4.RELEASE.jar:5.0.4.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-5.0.4.RELEASE.jar:5.0.4.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.28.jar:8.5.28]

    2、需要在Tomcat配置中,配置单个文件的大小和请求的大小

    @Configuration
    public class TomcatConfig {
    
        @Value("${spring.server.MaxFileSize}")
        private String MaxFileSize;
        @Value("${spring.server.MaxRequestSize}")
        private String MaxRequestSize;
    
        @Bean
        public MultipartConfigElement multipartConfigElement() {
            MultipartConfigFactory factory = new MultipartConfigFactory();
            //  单个数据大小
            factory.setMaxFileSize(MaxFileSize); // KB,MB
            /// 总上传数据大小
            factory.setMaxRequestSize(MaxRequestSize);
            return factory.createMultipartConfig();
        }
    }

    3、然后再在application.properties中进行配置

    #文件请求大小
    spring.server.MaxFileSize=300MB
    spring.server.MaxRequestSize=500MB
    **注意:**KB、MB……一定要带有B,不可以写K、M

    可以参考:springboot设置上传文件大小的两种方式
  • 相关阅读:
    python读取文件的方法
    python中global 和 nonlocal 的作用域
    android环境安装及配置
    python学习——sys.argv
    python学习——urlparse模块
    android:cmd下面用adb打log
    获取系统的换行符
    python----字符串方法
    类的继承---多重继承(两个父类有相同方法名和参数)
    Djngo 请求的生命周期
  • 原文地址:https://www.cnblogs.com/zouhong/p/13678528.html
Copyright © 2011-2022 走看看