在用jetty做图片上传时发现jetty的request.getParameter方法对数据长度有限制,默认是200000Byte。
超过200000Byte就出现异常:
Java代码
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:
Xml代码
<Call class="java.lang.System" name="setProperty"> <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>
Jetty6:
Xml代码
<Call class="java.lang.System" name="setProperty"> <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>
超过200000Byte就出现异常:
Java代码
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:
Xml代码
<Call class="java.lang.System" name="setProperty"> <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>
Jetty6:
Xml代码
<Call class="java.lang.System" name="setProperty"> <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg> <Arg>-1</Arg> </Call>
本文详细介绍了在使用Jetty进行图片上传时,遇到的请求参数数据长度限制问题,以及通过调整JVM参数和jetty.xml配置来解决该问题的方法。
168万+

被折叠的 条评论
为什么被折叠?



