繁体   English   中英

jclouds IOExpection:将请求主体写入服务器时出错

[英]jclouds IOExpection: Error writing request body to server

我们在Rackspace上使用jclouds ,并通过cloudfile apimulti threaded )上传大量文件时

当我们在objectApi.put行上objectApi.put异常时(请参阅底部的示例代码)

例外

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

S3类似问题

可以在这里找到

范例程式码

ObjectApi objectApi = cloudFiles.getObjectApi(REGION, container);
ByteSource byteSource = Files.asByteSource(file);
Payload payload = Payloads.newByteSourcePayload(byteSource);
objectApi.put(hashedName, payload);

问题:

任何人都经历过这样的行为吗? 也许有人可以解决此类问题?

谢谢

阿龙

网络不可靠,因此在使用云服务时(特别是在处理许多文件时)会出现一些例外情况。 特别是对于jclouds上传,我们在这里有一些示例代码:

https://github.com/jclouds/jclouds-examples/tree/master/blobstore-uploader

编辑:我还添加了一个JIRA问题,以确保我们迅速添加针对此情况的测试:

https://issues.apache.org/jira/browse/JCLOUDS-965

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM