実行時間の長いプロセスを持ち、出力をjsonとして返すSpringコントローラーでは、サーバーでまだ処理している間にコントローラーが空のjsonを返します。春にこれを処理する方法
1 に答える
0
データベースからレコードを取得したり、Spring Web サービスから JSON または XML 形式でレコードを取得したりするときに、connectionTimeout ( 500 I/O エラー) または readTimeout エラーが発生することがあります。
HttpComponentsMessageSender を使用して、 Spring MVC でサービスの経過時間/接続タイムアウトと読み取りタイムアウトを増やします
jar spring-ws-2.1.3.RELEASE-all.jarを追加するWEB-INF/lib
か、以下のMaven依存関係を追加する必要がありますpom.xml
<!-- https://mvnrepository.com/artifact/org.springframework.ws/spring-ws -->
<dependency>
<groupId>org.springframework.ws</groupId>
<artifactId>spring-ws</artifactId>
<version>2.1.3.RELEASE</version>
</dependency>
以下のコードをmvc-dispatcher-servlet.xml に追加します
<bean
class="org.springframework.ws.transport.http.HttpComponentsMessageSender">
<property name="connectionTimeout" value="600000" />
<property name="readTimeout" value="600000" />
</bean>
注: 600000 は 10 分を意味します。increase timeout
掛けるだけなら
1000 ミリ秒 * 60 秒 * 10 分= 600000
1000 ミリ秒 * 60 秒 * 30 分= 1800000
于 2016-07-28T13:40:43.960 に答える