私はSpring 4.0.3.RELEASEバージョンで作業しています。私は安らかに電話をかけることができます。しかし、私はHTTP接続が高価で、接続プールを使うことを考えました。私はthisとthisのような記事はほとんど読んでいません。依存関係をMaven3に組み込み、コンパイルするとすべてうまくいきます。実行時に問題が発生します。 このコードでは、PoolingHttpClientConnectionManagerのクラスが見つかりません。RestTemplate用のHTTP接続プールを設定する際のWebsphereの問題
public RestTemplate restTemplate(){
HttpHost host = new HttpHost("localhost", 9081);
PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
// Increase max total connection to 200
cm.setMaxTotal(200);
cm.setDefaultMaxPerRoute(50);
cm.setMaxPerRoute(new HttpRoute(host), 20);
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create().setConnectionManager(cm);
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(
httpClientBuilder.build());
return new RestTemplate(requestFactory);
}
そして、このコードで、私はHttpClientsのためのクラスが見つからない例外を取得。
public RestTemplate restTemplate(){
RestTemplate restTemplate = new RestTemplate();
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setConnectTimeout(20000);
requestFactory.setReadTimeout(20000);
restTemplate.setRequestFactory(requestFactory);
return restTemplate;
}
私はWebsphere 8.5にデプロイしています。そして、4.0.1から4.5.2の異なるバージョンのhttpclientを別のスコープで提供しました(提供、コンパイル)。 正しい方向のヒントがあれば、事前にお知らせください。
これは正しい方法ではありません。マークされた答えで述べたように、共有ライブラリ・アプローチは、Websphereコンテナ・ライブラリーとは異なる、jarを参照する正しい方法です。 –