Слишком большое исключение - PullRequest
27 голосов
/ 05 октября 2010

Когда я отправляю большой файл с помощью почтового запроса, система показывает исключение:

java.lang.IllegalStateException: Form too large1105723>200000
at org.mortbay.jetty.Request.extractParameters(Request.java:1404)
at org.mortbay.jetty.Request.getParameter(Request.java:749)......

Когда я ищу помощь по этому вопросу в Google, они дают некоторую помощь, например, webappcontext.setMaxFormContentSize(5000000);

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

Также я использую код jettyServer.setAttribute("org.mortbay.jetty.Request.maxFormContentSize", 5000000);

Но нет результата

Примечание: -Я использую Jetty-6.1.0

Ответы [ 17 ]

0 голосов
/ 20 марта 2019

ActiveMQ:

Проблема здесь с Jetty, на котором основан ActiveMQ. Вы можете найти более подробную информацию здесь, документация

Решение - это в apache-activemq-5.9.0/bin/win64/wrapper.conf файле, добавьте следующую строку a после b (см. Ниже).

  • a : wrapper.java.additional.16=-Dorg.eclipse.jetty.server.Request.maxFormContentSize=1000000
  • b : wrapper.java.additional.15=-Djava.security.auth.login.config=%ACTIVEMQ_CONF%/login.config

Если вы работаете на 32-битном компьютере, добавьте эту же строку в apache-activemq-5.9.0/bin/win32/wrapper.conf.

Happy Coding ..

0 голосов
/ 14 марта 2019

Я использую Spring boot и устанавливаю server.jetty.max-http-post-size: maxSize в application.properties, чтобы исправить это.

server.jetty.max-http-post-size: 500000
0 голосов
/ 31 марта 2017

Если вы используете причал во встроенном режиме, попробуйте это.

    ServletContextHandler servletHandler = new ServletContextHandler(ServletContextHandler.SESSIONS);
    servletHandler.setMaxFormContentSize(1024*1024*1024);//size you want to allow.
0 голосов
/ 07 ноября 2016

Запустите Дженкинса, добавив аргумент командной строки
-Dorg.eclipse.jetty.server.Request.maxFormContentSize = 500000

т.е. java -Dorg.eclipse.jetty.server.Request.maxFormContentSize = 500000 -jar jenkins.war

0 голосов
/ 25 марта 2015

Я столкнулся с похожей проблемой в ActiveMQ, поэтому мне пришлось отредактировать файл jetty.xml и добавить

  <property name="maxFormContentSize" value="-1" /> 

в свойство обработчика.

из: -

 <property name="handler">
 <bean id="sec" class="org.eclipse.jetty.server.handler.HandlerCollection">
 <property name="handlers">
 <list>
 <bean class="org.eclipse.jetty.webapp.WebAppContext">
  <property name="contextPath" value="/admin" /> 
  <property name="resourceBase" value="${activemq.home}/webapps/admin" /> 
  <property name="logUrlOnStart" value="true" /> 
  </bean>

до

 <property name="handler">
 <bean id="sec" class="org.eclipse.jetty.server.handler.HandlerCollection">
 <property name="handlers">
 <list>
 <bean class="org.eclipse.jetty.webapp.WebAppContext">
  <property name="contextPath" value="/admin" /> 
  <property name="resourceBase" value="${activemq.home}/webapps/admin" /> 
  <property name="logUrlOnStart" value="true" /> 
  <property name="maxFormContentSize" value="-1" /> 
  </bean>
0 голосов
/ 22 августа 2014

Если вы работаете с eclipse / spring, добавьте ниже аргументы vm -Dorg.mortbay.jetty.Request.maxFormContentSize = -1

0 голосов
/ 24 августа 2013

Возможно, из-за изменений в Jetty, начиная с версии 7, но я добился успеха только так:

в jetty-web.xml, добавьте ниже к объекту Server (1000000 - примерный размер, obv)

<Call name="setAttribute">
      <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg>
      <Arg>1000000</Arg>
</Call>

полный файл может выглядеть как мой

<Configure id="Server" class="org.eclipse.jetty.server.Server">
    <Call name="setAttribute">
      <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg>
      <Arg>1000000</Arg>
    </Call>

    <Ref id="DeploymentManager">
          <Call id="webappprovider" name="addAppProvider">
            <Arg>
(...)

ref http://wiki.eclipse.org/Jetty/Howto/Configure_Form_Size

...