Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jclouds IOExpection:将请求正文写入服务器时出错_Java_Jclouds_Cloudfiles_Rackspace Cloudfiles - Fatal编程技术网

Java jclouds IOExpection:将请求正文写入服务器时出错

Java jclouds IOExpection:将请求正文写入服务器时出错,java,jclouds,cloudfiles,rackspace-cloudfiles,Java,Jclouds,Cloudfiles,Rackspace Cloudfiles,我们将jclouds与Rackspace一起使用,并通过cloudfile-api上传大量文件(多线程) 偶尔,当我们在objectApi.put行上遇到异常时(请参见底部的示例代码) 例外情况 与S3类似的问题 示例代码 问题是: 有人经历过这样的行为吗?也许有人能解决这类问题 谢谢 很多网络都不可靠,所以在使用云服务时,特别是在处理许多文件时,可能会出现一些异常。特别是对于jclouds上传,我们这里有一些示例代码: 编辑:我还添加了JIRA问题,以确保我们在swift中专门针对这种情况

我们将
jclouds
Rackspace
一起使用,并通过
cloudfile-api
上传大量文件(
多线程

偶尔,当我们在
objectApi.put
行上遇到异常时(请参见底部的示例代码)

例外情况 与
S3类似的问题

示例代码 问题是: 有人经历过这样的行为吗?也许有人能解决这类问题

谢谢


很多网络都不可靠,所以在使用云服务时,特别是在处理许多文件时,可能会出现一些异常。特别是对于jclouds上传,我们这里有一些示例代码:

编辑:我还添加了JIRA问题,以确保我们在swift中专门针对这种情况添加测试:


jclouds重试机制应处理可重复有效负载(例如ByteSource)的网络错误。用户不需要添加自己的重试逻辑,除非他们使用InputStream有效负载。我正在调查可能丢失的重试逻辑。谢谢回答。目前,重试逻辑不起作用,因此我们使用循环扭曲它,并尝试/捕获以强制重试。
16-Jul-2015 11:58:00.811 SEVERE [threadsPool-1]      org.jclouds.logging.jdk.JDKLogger.logError error after writing 8192/streaming bytes to https://*****/****.jpg
 java.io.IOException: Error writing request body to server
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(HttpURLConnection.java:3478)
        at sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(HttpURLConnection.java:3461)
        at com.google.common.io.CountingOutputStream.write(CountingOutputStream.java:53)
        at com.google.common.io.ByteStreams.copy(ByteStreams.java:74)
        at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.writePayloadToConnection(JavaUrlHttpCommandExecutorService.java:297)
        at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.convert(JavaUrlHttpCommandExecutorService.java:160)
        at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.convert(JavaUrlHttpCommandExecutorService.java:64)
        at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:91)
        at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
        at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
        at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
        at org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
        at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
        at com.sun.proxy.$Proxy176.put(Unknown Source)
        at
ObjectApi objectApi = cloudFiles.getObjectApi(REGION, container);
ByteSource byteSource = Files.asByteSource(file);
Payload payload = Payloads.newByteSourcePayload(byteSource);
objectApi.put(hashedName, payload);