Form zu große Ausnahme

Lesezeit: 4 Minuten

Form zu grose Ausnahme
Narendra nnvd

Wenn ich eine große Datei mit einer Post-Anfrage sende, zeigt das System eine Ausnahme an:

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)......

Wenn ich in Google nach Hilfe suche, geben sie Hilfe, z.
webappcontext.setMaxFormContentSize(5000000);

Ich verwende diesen Code, aber das Problem ist nicht gelöst

Ich verwende auch den Code
jettyServer.setAttribute("org.mortbay.jetty.Request.maxFormContentSize", 5000000);

Aber kein Ergebnis

Hinweis:-Ich verwende Jetty-6.1.0

1641699355 910 Form zu grose Ausnahme
jmj

Versuchen Sie, die Systemeigenschaften über . einzustellen jetty.xml

    <Call class="java.lang.System" name="setProperty">
      <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg>
      <Arg>500000</Arg>
    </Call>

Ok, Sie können es von Ihrer Web-App aus konfigurieren

Fügen Sie die Datei WEB-INF/jetty-web.xml in Ihrer Webanwendung hinzu und konfigurieren Sie den Parameter in dieser Datei:

  <?xml version="1.0"?>
  <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN"
  "http://jetty.mortbay.org/configure.dtd">

  <Configure id="WebAppContext" class="org.mortbay.jetty.webapp.WebAppContext">
          <Set name="maxFormContentSize" type="int">600000</Set>
  </Configure>

Dokumentieren

Version 7 oder höher

Seit Version 7 wurden die Klassen von Jetty in ein anderes Paket verschoben. Sie müssen ersetzen org.mortbay... mit org.eclipse... (Danke an David für seinen Kommentar).

  • Vielen Dank für das Schreiben von Code, aber das ist ein großes Problem, dh wir warten den Server nicht, bitte sagen Sie mir, dass es eine andere Möglichkeit gibt, dies zu tun

    – Narendra nnvd

    5. Okt ’10 um 7:16

  • @Narendra nnvd Sie stellen Ihre App mit dem Maven-Plugin bereit?

    – jmj

    5. Okt ’10 um 7:17

  • Ich verwende den bereits eingerichteten Server Wir ändern die XML-Datei nicht.

    – Narendra nnvd

    5. Okt ’10 um 7:24


  • Ist das sowieso eine andere XML-Datei? Wir können Jetty-Xml-Dateien nicht bearbeiten. Bitte verstehen Sie mein Problem

    – Narendra nnvd

    5. Okt. 10 um 7:36 Uhr

  • Im Maven Jetty-Plugin: 500000

    – Mikael Lepistö

    8. Apr. ’14 um 12:24


import org.mortbay.jetty.Server;
//... other code here...//
int port = 8080;
Server server = new Server(port);
server.setAttribute("org.mortbay.jetty.Request.maxFormContentSize", -1);

Dieser Code funktioniert auf Jetty 6.0.2, das ich verwende.
Die Größe von “-1” bedeutet, dass das Formular keine Begrenzung hat. Ich habe versucht, ein Formular mit einer Größe von 20 000 000 Bytes zu posten, und ich hatte kein Problem.
Für Eclipse-Releases von Jetty (Jetty 7) müssen Sie den folgenden Code verwenden:

import org.eclipse.jetty.server.Server;
//... other code here...//
int port = 8080;
Server server = new Server(port);
server.setAttribute("org.eclipse.jetty.server.Request.maxFormContentSize", -1);

  • Ist das richtig ? Um in meiner Umgebung “-1” zu konfigurieren, lassen Sie den Jetty-Server die Größe der hochgeladenen Datei begrenzen. Vielleicht liegt es an der Version des Jetty-Anwendungsservers.

    – Hiropon

    22. März ’18 um 5:49

Leider kann ich keine Änderungen an jetty.xml vornehmen, also setze ich stattdessen einfach einige Optionen zum Anpassen der maxFormContentSize wie folgt:

JVM_OPTS="$JVM_OPTS -Dorg.eclipse.jetty.server.Request.maxFormContentSize=5000000"

Dies ist in dem Shell-Skript vorhanden, mit dem wir unsere Instanz von Solr starten.

  • Diese Methode hat bei mir funktioniert, aber System.setProperty seltsamerweise nicht.

    – Experte

    4. Januar ’15 um 17:48

Ich bin auch auf dieses Problem gestoßen (mit Jetty eingebettet in eine andere Anwendung, daher verwende ich keine jetty.xml).

Ich habe das benutzt setMaxFormContentSize Methode auf der ContextHandler -Klasse, die die Ausnahme “Form zu groß” behoben hat. (Sehen http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty#Setting_a_ServletContext für ein Beispiel zum Erstellen/Verwenden eines Kontexthandlers).

Form zu grose Ausnahme
Narendra nnvd

webappcontext.getServletContext().getContextHandler() .setMaxFormContentSize(10000000);

1641699355 583 Form zu grose Ausnahme
Timmy Chiu

            <!-- Development Jetty -->
        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>8.1.8.v20121106</version>
            <configuration>
                <scanIntervalSeconds>1</scanIntervalSeconds>
                <webApp>
                    <contextPath>/${project.build.finalName}</contextPath>
                </webApp>
                <systemProperties>
                    <systemProperty>
                        <name>org.eclipse.jetty.server.Request.maxFormContentSize</name>
                        <value>10485760</value>
                    </systemProperty>
                </systemProperties>
            </configuration>
        </plugin>

Arbeite für Jetty 8 im Maven-Plugin

Form zu grose Ausnahme
Christoph

Je nachdem, wie alt Ihre Jetty-Version ist (in meinem Fall Jetty-5.1.14 eingebettet in Eclipse Equinox), kann es auch sein, dass die Eigenschaft sein muss org.mortbay.http.HttpRequest.maxFormContentSize

Von: org.mortbay.http.HttpRequest

/**
 * Max size of the form content. Limits the size of the data a client can push at the server.
 * Set via the org.mortbay.http.HttpRequest.maxContentSize system property.
 */
public static int __maxFormContentSize = Integer.getInteger(
        "org.mortbay.http.HttpRequest.maxFormContentSize", 200000).intValue();

Sie müssen also beim Start in Ihrer Anwendung Folgendes tun, um den Wert festzulegen:

System.setProperty("org.mortbay.http.HttpRequest.maxFormContentSize", "10000000");

.

199150cookie-checkForm zu große Ausnahme

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy