欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

"Form too large"异常处理

程序员文章站 2022-07-15 12:59:27
...

jetty的request.getParameter方法对数据长度有限制,默认是200000Byte。

超过200000Byte就出现异常:
"Form too large"异常处理
解决办法无非把这个限制值换成更大的,或直接不限制数据长度。
Jetty6配置org.mortbay.jetty.Request.maxFormContentSize=-1,-1表示不限制。
如果工程用jetty插件启动的,可以配在jvm参数:
jetty:run -Dorg.mortbay.jetty.Request.maxFormContentSize=-1
如果maven工程引入的jetty插件,也可直接在pom.xml设置这个值

<plugin> 
    <groupId>org.mortbay.jetty</groupId> 
    <artifactId>maven-jetty-plugin</artifactId> 
    <jetty.version>6.1.25</jetty.version> 
    <configuration> 
        <!-- 增加systemProperties属性 --> 
        <systemProperties> 
            <systemProperty> 
                <name>org.mortbay.jetty.Request.maxFormContentSize</name> 
                <!-- -1代表不作限制 --> 
                <value>-1</value> 
            </systemProperty> 
        </systemProperties> 
    </configuration> 
</plugin> 

还有一种可行的方式是在WEB-INF下建立jetty-web.xml,内容如下

<?xml version="1.0"?>  
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">  

<Configure id="WebAppContext" class="org.mortbay.jetty.webapp.WebAppContext">  
    <Set name="maxFormContentSize" type="int">-1</Set>  
</Configure>  

这个文件加上去就可以正常提交form表单不用其他配置啦。