2015-08-27 3 views
2

Я хочу установить свойство maxSwallowSize для загружаемого tomcat. Мои application.properties имеет следующую строку:Настройка свойства tomcat с использованием свойств приложения Spring Boot

server.context-parameters.maxSwallowSize=20971520 

не работает по какой-то причине. Другие свойства, такие как server.port, работают хорошо. Отладка создания в TomcatEmbeddedServletContainerFactory Я вижу, что с этим свойством есть ServletContexInitializer (InitParameterConfiguringServletContextInitializer), но он никак не используется. (Несмотря на то, что это в имени переменной initializersToUse, ироничный, р)

не нравится уничтожение соединения при загрузке превышает максимальный размер, установленный

multipart.max-request-size=10MB 
multipart.max-file-size=2MB 

Это правильный путь установить это свойство? Во время debuggin я вижу, что значение IdentityInputFilter имеет значение по умолчанию 2 МБ.

новая версия org.springframework.boot: весна-загрузка стартер веб

ответ

7

server.context-parameters (как defined in the documentation может использоваться для указания параметров инициализации контекста сервлета). maxSwallowSize - свойство разъема. Думаю, это другое дело.

У нас нет явного свойства для этого, но вы всегда можете настроить его через свой собственный TomcatEmbeddedServletContainerFactory.

@Bean 
public TomcatEmbeddedServletContainerFactory containerFactory() { 
    return new TomcatEmbeddedServletContainerFactory() { 
     protected void customizeConnector(Connector connector) { 
      super.customizeConnector(connector); 
      if ((connector.getProtocolHandler() instanceof AbstractHttp11Protocol) { 
       (AbstractHttp11Protocol <?>) connector.getProtocolHandler()).setMaxSwallowSize(value); 
      } 
     } 
    }; 

} 
Смежные вопросы