diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizer.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizer.java index 165bc9d96a7..702f3771b55 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizer.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizer.java @@ -236,7 +236,7 @@ public class DefaultServletWebServerFactoryCustomizer if (maxHttpHeaderSize > 0) { customizeMaxHttpHeaderSize(factory, maxHttpHeaderSize); } - if (tomcatProperties.getMaxHttpPostSize() > 0) { + if (tomcatProperties.getMaxHttpPostSize() != 0) { customizeMaxHttpPostSize(factory, tomcatProperties.getMaxHttpPostSize()); } if (tomcatProperties.getAccesslog().isEnabled()) { diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizerTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizerTests.java index 1e1fcefec70..a8e119f043b 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizerTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/DefaultServletWebServerFactoryCustomizerTests.java @@ -396,6 +396,24 @@ public class DefaultServletWebServerFactoryCustomizerTests { } } + @Test + public void customTomcatDisableMaxHttpPostSize() { + Map map = new HashMap(); + map.put("server.tomcat.max-http-post-size", "-1"); + bindProperties(map); + TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory(0); + this.customizer.customize(factory); + TomcatWebServer embeddedFactory = (TomcatWebServer) factory.getWebServer(); + embeddedFactory.start(); + try { + assertThat(embeddedFactory.getTomcat().getConnector().getMaxPostSize()) + .isEqualTo(-1); + } + finally { + embeddedFactory.stop(); + } + } + @Test public void customizeUndertowAccessLog() { Map map = new HashMap<>();