2015-02-17 5 views
2

Мне нужно установить максимальный размер файла для загруженных файлов в моем сервлете, запущенном на tomcat. Я пробовал многостраничную конфигурацию, которая работала на причале, но tomcat просто проигнорировал ее. Это означает, что развертывание на сервере tomcat приводит к загрузке даже больших файлов. Моя конфигурация:Как ограничить загрузку файлов в tomcat servlet

<servlet> 
    <servlet-name>myServlet</servlet-name> 
    <servlet-class>sk.test.MyServlet</servlet-class> 
    <multipart-config> 
     <max-file-size>1048576</max-file-size> 
     <max-request-size>104857600</max-request-size> 
    </multipart-config> 
</servlet> 

Я уже пытался аннотированный конфигурацию, которая не работала слишком.

Использование: Tomcat 7.0.54, Servlet 3,0

Я буду признателен за любую помощь, спасибо

+0

вы проверили это? http://stackoverflow.com/questions/2947683/httprequest-maximum-allowable-size-in-tomcat –

+0

К Stefan: Не исключение. Tomcat просто игнорирует конфигурацию и позволяет загружать файлы. Гай: Они говорят о двух возможных путях ограничения в этой теме, где я использую второй, однако это не работает для меня. – somtomas

ответ

2

Установить значение максимального размера файла, используйте аннотацию перед классом сервлета или web.xml конфигурации. См. maxFileSize в аннотации или <max-file-size></max-file-size> в xml config.

@MultipartConfig(
    location="/tmp", 
    fileSizeThreshold=1024*1024, // 1 MB 
    maxFileSize=1024*1024*5,  // 5 MB 
    maxRequestSize=1024*1024*5*5 // 25 MB 
) 

или

<multipart-config> 
    <location>/tmp</location> 
    <max-file-size>20848820</max-file-size> 
    <max-request-size>418018841</max-request-size> 
    <file-size-threshold>1048576</file-size-threshold> 
</multipart-config> 

Ссылка: https://docs.oracle.com/javaee/7/tutorial/servlets011.htm

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