Jclouds multipart上传抛出:NullPointerException:Null partETag

时间:2016-01-21 17:52:24

标签: file-upload jclouds openstack-swift chunked

我正在尝试使用jClouds Blobstore API将文件以块的形式上传到openstack-swift。以下是我用来上传名为dom4j-1.6.1.jar的文件的代码片段。

blobStore.putBlob(“jclouds-example”,blob)确实有效,但是如果我将multipart(将文件块并上传到片段中)添加到方法中,那么我会得到NullPointerException:Null partETag。

ByteSource payload = Files.asByteSource(tempFile);
Blob blob = blobStore.blobBuilder(objectName)
            .payload(payload)
            .contentDisposition("attachment; filename=dom4j-1.6.1.jar")
            .contentMD5(payload.hash(Hashing.md5()))
            .contentLength(payload.size())
            .contentType(MediaType.OCTET_STREAM.toString())
            .build();
System.out.println(blob.getMetadata().getName());
 // Upload the Blob 
String eTag = blobStore.putBlob("jclouds-example", blob, multipart());
BTW,jclouds目前的稳定版本1.9.2不支持openstack-swift分段上传,所以我使用了他们的每晚构建版本2.0.0,这似乎支持分块上传,但不幸的是我得到空指针异常。 Anyhelp非常感谢。

0 个答案:

没有答案