在用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>
本文详细介绍了在使用Jetty进行图片上传时,遇到的请求参数长度限制问题及解决方案。通过调整JVM参数或修改jetty.xml配置文件,可以解除Jetty对表单数据大小的默认限制,实现大文件的顺利上传。

2万+

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



