java.lang.IllegalStateException: Form too many key解决方法

时间:2024-04-09 09:32:28

问题描述:

1、Jetty 版本:jetty-9.2.2-v20140723;

2、在项目中,因修改资料中的表单项是根据当前这保单的被保人决定的,所以在团单时就存在大量的表单key从而导致JETTY容器抛 java.lang.IllegalStateException: Form too many key

java.lang.IllegalStateException: Form too many key解决方法

根据堆栈信息,我们可以跟踪代码发现JETTY的maxFormContentSize=200000,maxFormKeys=1000,并且知道jetty读取的配置信息key分别如图所示:

java.lang.IllegalStateException: Form too many key解决方法

3、到此我们知道原因了,那一下就是修改JETTY容器配置信息;

      找到%JETTY_HOME%/etc/jetty.xml文件,在<Configure id="Server" class="org.eclipse.jetty.server.Server">节点下新增,如图:

java.lang.IllegalStateException: Form too many key解决方法

<Call name="setAttribute">
        <Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg>
        <Arg>9000000</Arg>
 </Call>
 <Call name="setAttribute">
        <Arg>org.eclipse.jetty.server.Request.maxFormKeys</Arg>
        <Arg>50000</Arg>
 </Call>

具体数值,请根据自己项目实际情况来设置;

OK,到这就搞定了。

转载于:https://my.oschina.net/woter/blog/741355