Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Bartel2013-01-07 09:10:54 +0000
committerJan Bartel2013-01-07 09:10:54 +0000
commit3265c334cb954a758280523df41ada21880eb763 (patch)
tree7e647e902570da2a2bf4e55888f51afbb1cbbfd0
parenta4c547d61fbe2cc60eac38f0c9624774c77f1081 (diff)
downloadorg.eclipse.jetty.project-3265c334cb954a758280523df41ada21880eb763.tar.gz
org.eclipse.jetty.project-3265c334cb954a758280523df41ada21880eb763.tar.xz
org.eclipse.jetty.project-3265c334cb954a758280523df41ada21880eb763.zip
397130 maxFormContentSize set in jetty.xml is ignored
-rw-r--r--jetty-server/src/main/java/org/eclipse/jetty/server/Request.java38
-rw-r--r--jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java4
2 files changed, 33 insertions, 9 deletions
diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java
index 4d927bc317..e3f7f6c0d8 100644
--- a/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java
+++ b/jetty-server/src/main/java/org/eclipse/jetty/server/Request.java
@@ -255,18 +255,42 @@ public class Request implements HttpServletRequest
maxFormContentSize = _context.getContextHandler().getMaxFormContentSize();
maxFormKeys = _context.getContextHandler().getMaxFormKeys();
}
- else
+
+ if (maxFormContentSize < 0)
+ {
+ Object obj = _connection.getConnector().getServer().getAttribute("org.eclipse.jetty.server.Request.maxFormContentSize");
+ if (obj == null)
+ maxFormContentSize = 200000;
+ else if (obj instanceof Number)
+ {
+ Number size = (Number)obj;
+ maxFormContentSize = size.intValue();
+ }
+ else if (obj instanceof String)
+ {
+ maxFormContentSize = Integer.valueOf((String)obj);
+ }
+ }
+
+ if (maxFormKeys < 0)
{
- Number size = (Number)_connection.getConnector().getServer()
- .getAttribute("org.eclipse.jetty.server.Request.maxFormContentSize");
- maxFormContentSize = size == null?200000:size.intValue();
- Number keys = (Number)_connection.getConnector().getServer().getAttribute("org.eclipse.jetty.server.Request.maxFormKeys");
- maxFormKeys = keys == null?1000:keys.intValue();
+ Object obj = _connection.getConnector().getServer().getAttribute("org.eclipse.jetty.server.Request.maxFormKeys");
+ if (obj == null)
+ maxFormKeys = 1000;
+ else if (obj instanceof Number)
+ {
+ Number keys = (Number)obj;
+ maxFormKeys = keys.intValue();
+ }
+ else if (obj instanceof String)
+ {
+ maxFormKeys = Integer.valueOf((String)obj);
+ }
}
if (content_length > maxFormContentSize && maxFormContentSize > 0)
{
- throw new IllegalStateException("Form too large" + content_length + ">" + maxFormContentSize);
+ throw new IllegalStateException("Form too large " + content_length + ">" + maxFormContentSize);
}
InputStream in = getInputStream();
diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
index 60b1f24ff1..beb9f81f3b 100644
--- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
+++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
@@ -129,8 +129,8 @@ public class ContextHandler extends ScopedHandler implements Attributes, Server.
private EventListener[] _eventListeners;
private Logger _logger;
private boolean _allowNullPathInfo;
- private int _maxFormKeys = Integer.getInteger("org.eclipse.jetty.server.Request.maxFormKeys",1000).intValue();
- private int _maxFormContentSize = Integer.getInteger("org.eclipse.jetty.server.Request.maxFormContentSize",200000).intValue();
+ private int _maxFormKeys = Integer.getInteger("org.eclipse.jetty.server.Request.maxFormKeys",-1).intValue();
+ private int _maxFormContentSize = Integer.getInteger("org.eclipse.jetty.server.Request.maxFormContentSize",-1).intValue();
private boolean _compactPath = false;
private boolean _aliases = false;

Back to the top