Java 容器上的Null对象引用错误。createIfNotExists();

Java 容器上的Null对象引用错误。createIfNotExists();,java,azure-storage-blobs,Java,Azure Storage Blobs,我正尝试通过以下链接使用Android应用程序的Azure Blob存储: 我正在使用Android Studio 我会一直很好,直到我得到一个例外: container.createIfNotExists(); 这一行给出了错误: Attempt to invoke interface method 'void com.android.okhttp.internal.http.Transport.writeRequestHeaders(com.android.okhttp.Request)

我正尝试通过以下链接使用Android应用程序的Azure Blob存储:

我正在使用Android Studio

我会一直很好,直到我得到一个例外:

container.createIfNotExists();
这一行给出了错误:

Attempt to invoke interface method 'void com.android.okhttp.internal.http.Transport.writeRequestHeaders(com.android.okhttp.Request)' on a null object reference
以下是我的作品:

import com.microsoft.azure.storage.*;
import com.microsoft.azure.storage.blob.*;
java代码:

try{
            System.out.print("Code Progess 2 ");
            CloudStorageAccount account = CloudStorageAccount.parse(storageConnectionString);
            System.out.print("Code Progess 3 ");
            CloudBlobClient serviceClient = account.createCloudBlobClient();
            System.out.print("Code Progess 4 ");

            // Container name must be lower case.
            CloudBlobContainer container = serviceClient.getContainerReference("myimages");
            System.out.print("Code Progess 5 ");
            container.createIfNotExists();
            System.out.print("Code Progess 6 ");

            // Upload an image file.
            CloudBlockBlob blob = container.getBlockBlobReference("image1.jpg");
            System.out.print("Code Progess 7 ");
            File sourceFile = new File("<Path to local image storage>");
            System.out.print("Code Progess 8 ");
            blob.upload(new FileInputStream(sourceFile), sourceFile.length());
            System.out.print("Code Progess 9 ");

            // Download the image file.
            File destinationFile = new File(sourceFile.getParentFile(), "image1Download.tmp");
            System.out.print("Code Progess 10 ");
            blob.downloadToFile(destinationFile.getAbsolutePath());
            System.out.print("Code Progess 11 ");
        }

catch (Exception e) {
            System.out.print("Exception encountered: ");
            System.out.println(e.getMessage());
            System.exit(-1);
        }
谁能告诉我哪里出了问题


谢谢

您提到的入门指南是专门针对Java的。您的示例是否使用Java或Android Azure存储客户端库?有一个单独的android Azure存储客户端库,您应该使用它来构建android应用程序


您可以查看on-Github存储库来开始。关于使用blob的示例代码也可以在存储库中找到

显示异常stacktrace和相关代码。我添加了stacktrace和代码。感谢Hanks Vinay,存储库真的帮了大忙:)
01-09 20:54:02.072    2271-2287/com.rollcall.blob W/art﹕ Verification of void com.microsoft.azure.storage.blob.CloudBlobContainer.create(com.microsoft.azure.storage.blob.BlobRequestOptions, com.microsoft.azure.storage.OperationContext) took 334.218ms
01-09 20:54:02.140    2271-2287/com.rollcall.blob W/art﹕ Unresolved exception class when finding catch block: javax.xml.stream.XMLStreamException
01-09 20:54:02.141    2271-2287/com.rollcall.blob I/System.out﹕ Code Progess 1 Code Progess 2 Code Progess 3 Code Progess 4 Code Progess 5 Exception encountered: Attempt to invoke interface method 'void com.android.okhttp.internal.http.Transport.writeRequestHeaders(com.android.okhttp.Request)' on a null object reference