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

解决Jetty Form too large 异常

程序员文章站 2022-03-08 16:08:52
...
[img]http://dl2.iteye.com/upload/attachment/0088/5106/8866976d-4f28-386f-8f96-b7b5caf554ed.jpg[/img]

[size=large]
今天在项目当中遇到了 Form too large错误,原因是因为提交的表单超过了Jetty本身的限制,Jetty对POST提交的数据最大限制为200000byte,大概就2M左右的数据,而我却需将一个树形报表generate成excel,足足超了十多倍,经过查找资料,发现Jetty限制提交大小是由maxFormContentSize属性控制,以下就给出解决方案

在使用Maven Jetty Plugin的背景下

[color=red]Maven Jetty Plugin 6.x情况下[/color]
[/size]

<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>

[size=large]
又或者可以使用运行时给出参数的方式进行设置
[/size]

jetty:run -Dorg.mortbay.jetty.Request.maxFormContentSize=-1

[size=large]
[color=red]Maven Jetty Plugin 7.x情况下[/color]
[/size]

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

[size=large]
你好,我又是运行时给出参数方式君
[/size]

jetty:run -Dorg.eclipse.jetty.server.Request.maxFormContentSize=-1

[size=large]
其实还有使用jetty.xml文件方式实现的方式,但相同的事情,但笔者总觉得,相同的结果,选择最简单的方式实现
[/size]
相关标签: Exception