返回jetty-maven-plugin我很难设置缓冲区大小。
我的用例意味着文件上传(通常大小约为700Ko)。 因为上传对于jetty-maven-plugin默认配置来说太大了,我得到Http响应,错误状态代码为413(请求太大)
我尝试使用插件配置:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${jetty-maven.version}</version>
<configuration>
<scanIntervalSeconds>3</scanIntervalSeconds>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>8080</port>
<maxIdleTime>60000</maxIdleTime>
<requestHeaderSize>8192</requestHeaderSize>
<requestBufferSize>2097152</requestBufferSize>
</connector>
</connectors>
</configuration>
</plugin>
然后我尝试将jetty-maven-plugin与jetty.xml文件一起使用
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${jetty-maven.version}</version>
<configuration>
<scanIntervalSeconds>3</scanIntervalSeconds>
<jettyConfig>${basedir}/src/main/config/jetty/jetty.xml</jettyConfig>
</configuration>
</plugin>
jetty.xml如下:
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Call name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
<Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
<Set name="requestHeaderSize">8192</Set>
<Set name="requestBufferSize">2097152</Set>
</New>
</Arg>
</Call>
</Configure>
没有任何作用。 有人可以给我正确的配置吗?
答案 0 :(得分:1)
我不确定这是否解决了您的用例中的问题,但您可以尝试将以下内容添加到maven-jetty-plugin的<configuration>
部分:
<systemProperties>
<systemProperty>
<name>org.eclipse.jetty.server.Request.maxFormContentSize</name>
<value>-1</value> <!-- or any other value -1 is for max -->
</systemProperty>
<systemProperties>
如jesse mcconnell所述,该属性已在jetty 7/8中重命名为org.eclipse.jetty.server.Request.maxFormContentSize
。
对于我来说,org.mortbay.jetty.Request.maxFormContentSize
的码头正在工作。
答案 1 :(得分:1)
按照这个更改你的pom,并将这两个xml文件添加到你的项目中。我希望,它对你有用。
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.11.v20150529</version>
<configuration>
<contextPath>/random-api</contextPath>
<scanIntervalSeconds>5</scanIntervalSeconds>
<jettyXml>jetty.xml,jetty-http.xml</jettyXml>
</configuration>
</plugin>
=============== jetty.xml和jetty-http.xml ================= https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-tools/xwiki-platform-tool-jetty/xwiki-platform-tool-jetty-resources/src/main/resources/jetty/etc/jetty.xml
答案 2 :(得分:0)
暂停(午餐)后,我抓住了我应该测试的网络应用程序的代码。 其“内部”配置存在冗余限制(使用具有自己大小限制的上传代理)。
实际上为jetty提出的两个配置正在运行(现在web-app没有任何多余的限制)