Ich arbeite mit Spring 4.0.3.RELEASE-Version. Ich kann erholsame Anrufe erfolgreich machen. Ich habe jedoch gelernt, dass HTTP-Verbindungen teuer sind und den Verbindungspool verwenden. Ich lese einige Artikel wie this und this. Alles ist in Ordnung, wenn ich die Abhängigkeit mit Maven3 einschließe und kompiliere. Die Probleme treten während der Laufzeit auf. Mit diesem Code erhalte ich eine Ausnahme für die Klasse PoolingHttpClientConnectionManager.Websphere-Probleme beim Einrichten von HTTP-Verbindungspool für RestTemplate
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);
}
Und mit diesem Code, erhalte ich Klasse nicht gefunden Ausnahme für HttpClients.
public RestTemplate restTemplate(){
RestTemplate restTemplate = new RestTemplate();
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
requestFactory.setConnectTimeout(20000);
requestFactory.setReadTimeout(20000);
restTemplate.setRequestFactory(requestFactory);
return restTemplate;
}
Ich bin auf Websphere 8.5 bereitstellen. Und ich habe verschiedene Versionen von httpclient von 4.0.1 bis 4.5.2 mit unterschiedlichem Umfang (vorausgesetzt, kompilieren) ohne Glück versucht. Vielen Dank im Voraus für einen Hinweis in die richtige Richtung.
Dies ist nicht der richtige Weg. Wie in der markierten Antwort erwähnt, ist der Shared-Library-Ansatz der richtige Weg, um auf ein jar zu verweisen, das sich von der Websphere-Container-Bibliothek unterscheidet. –