web-dev-qa-db-fra.com

Quelle version de httpclient est compatible avec Amazon SDK v 1.11.5?

J'utilise le kit de développement logiciel Amazon Java, version 1.11.5 (j'ai inclus le fichier aws-Java-sdk-1.11.5.jar dans mon répertoire WEB-INF/lib). Quelle version de la bibliothèque Apache httpclient dois-je inclure qui est compatible avec cette version du kit SDK AWS? J'ai essayé httpclient-4.3.4.jar, mais j'obtiens l'erreur ci-dessous

15:34:25,366 ERROR [io.undertow.request] (default task-34) UT005023: Exception handling request to /pluginwiris_engine/app/service: Java.lang.NoSuchMethodError:    org.Apache.http.conn.ssl.SSLConnectionSocketFactory.<init>(Ljavax/net/ssl/SSLContext;Ljavax/net/ssl/HostnameVerifier;)V
    at com.amazonaws.http.conn.ssl.SdkTLSSocketFactory.<init>(SdkTLSSocketFactory.Java:56)
    at com.amazonaws.http.Apache.client.impl.ApacheConnectionManagerFactory.getPreferredSocketFactory(ApacheConnectionManagerFactory.Java:87)
    at com.amazonaws.http.Apache.client.impl.ApacheConnectionManagerFactory.create(ApacheConnectionManagerFactory.Java:65)
    at com.amazonaws.http.Apache.client.impl.ApacheConnectionManagerFactory.create(ApacheConnectionManagerFactory.Java:58)
    at com.amazonaws.http.Apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.Java:46)
    at com.amazonaws.http.Apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.Java:37)
    at com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.Java:213)
    at com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.Java:145)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.Java:393)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.Java:373)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.Java:355)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.Java:327)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.Java:309)

Merci pour l'aide supplémentaire, - Dave

12
Dave

En regardant la source du kit Java AWS SDK, sous la balise 1.11.5, vous pouvez voir le fichier dans le fichier POM ils ont spécifié ce qui suit:

<httpcomponents.httpclient.version>4.5.2</httpcomponents.httpclient.version>

Je dirais donc que HTTP Client version 4.5.2 est compatible avec AWS SDK version 1.11.5. Si vous utilisez un outil de gestion des dépendances tel que Maven, vous pouvez toujours le laisser entrer dans la version du client HTTP spécifiée dans le kit SDK AWS.

 working combination of libraries

16
Mark B

Regardez les dépendances de compilation sur repo maven pour aws-Java-sdk-core

Vous pouvez voir que cela dépend de org.Apache.httpcomponents »httpclient - 4.5.2. Vérifiez si vous avez tous les dépendances de httpclient-4.5.2 . La version correcte de httpcore est peut-être manquante.

0
Ashutosh Srivastav