Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring integration Spring集成HTTPOutboundGateway::连接池和connectionTimeout、soTimeout、maxTotalConnections_Spring Integration - Fatal编程技术网

Spring integration Spring集成HTTPOutboundGateway::连接池和connectionTimeout、soTimeout、maxTotalConnections

Spring integration Spring集成HTTPOutboundGateway::连接池和connectionTimeout、soTimeout、maxTotalConnections,spring-integration,Spring Integration,我们正在将基于mule的应用程序转换为spring,在我们使用mule HttpsConnector使用第三方服务的现有代码中,我们希望使用spring Http出站网关做同样的事情。。 org.springframework.integration.http.outbound.HttpRequestExecutingMessageHandler 这里我的问题是,, 如何启用HTTP连接池? 如何设置connectionTimeout、soTimeout、maxTotalConnections等

我们正在将基于mule的应用程序转换为spring,在我们使用mule HttpsConnector使用第三方服务的现有代码中,我们希望使用spring Http出站网关做同样的事情。。 org.springframework.integration.http.outbound.HttpRequestExecutingMessageHandler

这里我的问题是,, 如何启用HTTP连接池? 如何设置connectionTimeout、soTimeout、maxTotalConnections等道具

这就是我试图做的,但是这里我们不能在requestFactory中注入org.apache.commons.httpclient.httpclient


Spring集成
HttpRequestExecutingMessageHandler
提供了
setRequestFactory()
注入选项。然后,您可以选择任何方便的
clienthttpprequestfactory
实现,例如
httpcomponents客户端httprequestfactory

 * {@link org.springframework.http.client.ClientHttpRequestFactory} implementation that
 * uses <a href="http://hc.apache.org/httpcomponents-client-ga/">Apache HttpComponents
 * HttpClient</a> to create requests.
 *
 * <p>Allows to use a pre-configured {@link HttpClient} instance -
 * potentially with authentication, HTTP connection pooling, etc.
 *
 * <p><b>NOTE:</b> Requires Apache HttpComponents 4.3 or higher, as of Spring 4.0.

然后,这个bean可以被
restemplate
Http.outboundGateway

使用,但它有一个
HttpClient
要注入
@Bean
public ClientHttpRequestFactory createRequestFactory()
{
    PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
    connectionManager.setMaxTotal(10);
    connectionManager.setDefaultMaxPerRoute(5);

    RequestConfig config =
            RequestConfig.custom()
                    .setConnectTimeout(100000)
                    .setConnectionRequestTimeout(1000)
                    .build();

    CloseableHttpClient httpClient =
            HttpClientBuilder.create()
                    .setConnectionManager(connectionManager)
                    .setDefaultRequestConfig(config).build();

    return new HttpComponentsClientHttpRequestFactory(httpClient);
}