Difference between revisions of "Jetty/Howto/Configure Form Size"

From Eclipsepedia

< Jetty‎ | Howto
Jump to: navigation, search
Line 1: Line 1:
 
{{Jetty Howto
 
{{Jetty Howto
|introduction = Modifying the maximum permissable size of submitted form content.
+
|introduction = Jetty limits the amount of data that can be posted back from a browser or other client to the server. This helps protect the server against denial of service attacks by malicious clients sending huge amounts of data.
 
+
== Form Content Size ==
+
 
+
Jetty limits the amount of data that can be posted back from a browser or other client to the server. This helps protect the server against denial of service attacks by malicious clients sending huge amounts of data.
+
  
 
The default maximum size permitted by Jetty is 200000 bytes.  
 
The default maximum size permitted by Jetty is 200000 bytes.  
Line 19: Line 15:
 
</source>
 
</source>
  
You can do this either in a [[Jetty/Feature/ContextDeployer|context xml deployment descriptor]] externally to the webapp, or in a jetty-web.xml file in the webapp's WEB-INF directory.
+
You can do this either in a [[Jetty/Feature/ContextDeployer|context xml deployment descriptor]] externally to the webapp, or in a [[Jetty/Reference/jetty-web.xml|jetty-web.xml file]] in the webapp's WEB-INF directory.
  
 
In either case the syntax of the xml file is the same:
 
In either case the syntax of the xml file is the same:

Revision as of 01:20, 15 August 2011



Contents

Introduction

Jetty limits the amount of data that can be posted back from a browser or other client to the server. This helps protect the server against denial of service attacks by malicious clients sending huge amounts of data.

The default maximum size permitted by Jetty is 200000 bytes.

You can change this default for a particular webapp, for all webapps on a particular Server instance, or all webapps within the same jvm:


Changing for a single webapp

The method to invoke is:

ContextHandler.setMaxFormContentSize(int maxSize);

You can do this either in a context xml deployment descriptor externally to the webapp, or in a jetty-web.xml file in the webapp's WEB-INF directory.

In either case the syntax of the xml file is the same:

<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  <!-- Max Form Size                                                   -->
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  <Set name="maxFormContentSize">200000</Set>
</Configure>

Changing for all apps on a Server

Set an attribute on the Server instance for which you want to modify the max form content size:

<configure class="org.eclipse.jetty.server.Server">
      <Call name="setAttribute">
      <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg>
      <Arg>200000</Arg>
    </Call>
</configure>

Changing for all apps in the jvm

Use the system property "org.eclipse.jetty.server.Request.maxFormContentSize".