在用jetty做图片上传时发现jetty的request.getParameter方法对数据长度有限制,默认是200000Byte。
超过200000Byte就出现异常:
java.lang.IllegalStateException: Form too large395336>200000
at org.eclipse.jetty.server.Request.extractParameters(Request.java:249)
at org.eclipse.jetty.server.Request.getParameter(Request.java:648)
可以通过设置JVM参数来修改这个限制:
Jetty7:org.eclipse.jetty.server.Request.maxFormContentSize=-1
Jetty6:org.mortbay.jetty.Request.maxFormContentSize=-1
-1代表不限制。
也可以在jetty.xml中添加以下代码:
Jetty7:
<Call class="java.lang.System" name="setProperty"> <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>
Jetty6:
<Call class="java.lang.System" name="setProperty"> <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>