相关疑难解决方法(0)

在S3中迭代对象时出现"ConnectionPoolTimeoutException"

我已经使用aws java API工作了一段时间而没有那么多问题.目前我正在使用1.5.2版本的库.

当我使用以下代码迭代文件夹中的对象时:

AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials(MyClass.class.getResourceAsStream("AwsCredentials.properties")));

String s3Key = "folder1/folder2";


String bucketName = Constantes.S3_BUCKET;
String key = s3Key +"/input_chopped/";

ObjectListing  current = s3.listObjects(new ListObjectsRequest()
        .withBucketName(bucketName)
        .withPrefix(key));

boolean siguiente  = true;

while (siguiente) {    

    siguiente &= current.isTruncated();
    contador += current.getObjectSummaries().size();

    for (S3ObjectSummary objectSummary : current.getObjectSummaries()) {        
        S3Object object = s3.getObject(new GetObjectRequest(bucketName, objectSummary.getKey()));
        System.out.println(object.getKey());
    }

    current=s3.listNextBatchOfObjects(current);

}
Run Code Online (Sandbox Code Playgroud)

要点:链接:https://gist.github.com/fgblanch/6038699 我收到以下异常:

INFO  (AmazonHttpClient.java:358) - Unable to execute HTTP request: Timeout waiting for connection from pool
org.apache.http.conn.ConnectionPoolTimeoutException: Timeout …
Run Code Online (Sandbox Code Playgroud)

java amazon-s3 amazon-web-services apache-httpcomponents

14
推荐指数
1
解决办法
1万
查看次数