2012-08-14 3 views
0

jetty-maven-plugin으로 돌아 가기 버퍼 크기를 설정하는 데 어려움이 있습니다.jetty-maven-plugin 설정 버퍼 크기

내 유스 케이스는 파일 업로드를 의미합니다 (보통 크기는 ~ 700Ko).

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

가 그럼 난에 시도 : 업로드가 부두 - 받는다는 - 플러그인의 기본 구성이 너무 크기 때문에 나는 413 (요청이 너무 커서) 오류 상태 코드

와 응답 내가 플러그인 구성을 사용하여 tryied HTTP GET

<?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> 
012 다음 jetty.xml의 아래에있는 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> 

와 부두 - 받는다는 - 플러그인을 사용

아무 것도 작동하지 않습니다. 누군가 나에게 올바른 구성을 알려주시겠습니까?

답변

1

나는이 사용 사례에서 문제를 해결할 수 있는지 모르겠지만, 당신은 받는다는 - 부두 - 플러그인의 당신의 <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에 의해 언급 한 바와 같이 방파제 7/8에서 재산이 org.eclipse.jetty.server.Request.maxFormContentSize으로 바뀌 었습니다.

나를 위해 부두 6 용 org.mortbay.jetty.Request.maxFormContentSize이 작동 중입니다.

+0

감사합니다. 내가 도와 줄께 – Sylvain

0

잠시 후 (점심 식사) 나는 테스트해야했던 웹 앱 코드를 그렸습니다. "내부"구성에 중복 제한이 있습니다 (크기 제한이있는 업로드 에이전트를 사용하십시오). 사실 부두에 대한 제안이 개 구성이 작동하는

+0

도움을 주셔서 감사합니다. 언급했듯이 앱 서버 설정은 제한 사항으로 설정 한 앱에 의해 편향되었습니다. 즉, 서버가 아닌 큰 업로드를 거부 한 앱이었습니다. – Sylvain

1

변경이 따라 당신의 치어 (지금 웹 응용 프로그램은 중복 제한이 없습니다) 및 프로젝트에이 두 개의 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의 및 부두 - 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

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-http.xml

+0

좋은 ....이 작품, 당신은 받아 들여진 anser를 받아야한다 – Nicholas