我正在尝试使用多部分上传AWS S3 java执行文件上传(我使用的是SDK1.8.1)。我能够成功地执行上传。
但是,我断断续续地得到了这个例外。
7月31日,2014年4:39:38 AM com.amazonaws.http.AmazonHttpClient executeHelper信息:无法执行HTTP请求:连接重置java.net.SocketException:连接重置在java.net.SocketInputStream.read(SocketInputStream.java:121) at sun.security.ssl.InputRecord.readFully(InputRecord.java:312) at sun.security.ssl.InputRecord.read(InputRecord.java:350) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)在sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:884) at sun.security.ssl.AppInputStream.read(AppInputStream.java:102) at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:166) at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:90) at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:281) at org.apache.http.impl.conn.DefaultHttpResponseParser.org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:62) at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:254) org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:289) at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:252) at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:191 parseHead(DefaultHttpResponseParser.java:92))在org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:300) at com.amazonaws.http.protocol.SdkHttpRequestExecutor.doReceiveResponse(SdkHttpRequestExecutor.java:66) at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:127) at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:717) at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:522) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805) at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:402) at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:245) at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3711) at com.amazonaws.services.s3.AmazonS3Client.uploadPart(AmazonS3Client.java:2809) at cloud<-filename->.writeContent(<-filename->.java:<-linenumber->)
在以下代码中
try {
_partETags.add(_s3.uploadPart(uploadPartReq).getPartETag());
} catch (AmazonClientException e) {
System.out.println("Amazon service error. Retrying...");
printException(e);
} catch (Exception e) {
printException(e);
throw new UserException("Received an exception while performing upload part");
}
如果我看一下文档化,它会说uploadPart函数只会抛出两个类AmazonClientException和AmazonServiceException。
..。UploadPartResult uploadPart(UploadPartRequest request)抛AmazonClientException,AmazonServiceException .抛出: AmazonClientException --如果在进行请求或处理响应时客户端遇到任何错误。AmazonServiceException --如果在处理请求时亚马逊S3中发生了任何错误。..。
但是,我收到了不同的例外。
我有以下问题
发布于 2015-06-27 08:24:10
这是来自AmazonS3Client的一条日志消息(在信息级别),它告诉您存在一个瞬态网络错误。默认情况下,AmazonS3Client捕获这类异常并为您重试上传。您可以通过ClientConfiguration来调整这种行为。如果在配置的重试次数之后,上传仍未成功,则将抛出一个AmazonClientException
,如文档所示。
发布于 2018-08-13 04:58:17
当我试图通过eclipse上传我的项目AWS lambda时,我遵循了教程链接中的步骤:
但是,在Eclipse中执行“将Lambda代码部署到AWS”的步骤时,右击代码并选择>将函数上传到Lambda ===>…
我面临的错误: 1)我收到了一个错误窗口,其中的消息是“未能将项目上传到Lambda,无法执行请求:通过对等程序重置连接:套接字写入错误”
2)我的Stack Tarce的第一行异常是:"com.amazonaws.SdkClientException:无法执行HTTP请求:通过对等方重置连接:由: java.net.SocketException:对等方重置连接:套接字写入错误引起的套接字写入错误“
3) Eclipse日志给出了这样的消息:“org.eclipse.core.databinding.ValueBinding.doUpdate(ValueBinding.java:158)”上的java.lang.NullPointerException
然后,我对eclipse网络连接做了一个小小的更改,从而更改了设置,因为我的代理设置阻止了将我的项目上传到lambda,因此我想出了如下解决方案:
解决方案: Window -> Preferences -> General -> Network Connection -> Active Provider作为“Direct.”
然后尝试用相同的步骤将这个项目上传到lambda上,这对我来说是有效的。希望这对你也有帮助。
https://stackoverflow.com/questions/25306172
复制相似问题