mardi 4 août 2015

Trying to upload aa file to Google Nearline Storage from a Java program using the Java API, but I'm getting a Forbidden error

This is my code:

        File file = new File("text.txt");

        InputStream inputStream = new FileInputStream(file);  // object data, e.g., FileInputStream


        long byteCount = inputStream.available();  // size of input stream

        InputStreamContent mediaContent = new InputStreamContent("application/octet-stream", inputStream);
        // Knowing the stream length allows server-side optimization, and client-side progress
        // reporting with a MediaHttpUploaderProgressListener.
        mediaContent.setLength(byteCount);

        StorageObject objectMetadata = null;

        Storage.Objects.Insert insertObject = client.objects().insert("mybucket", objectMetadata, 
           mediaContent);
        insertObject.setName("text");

And this is the error message:

com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
{
  "code" : 403,
  "errors" : [ {
    "domain" : "global",
    "message" : "Forbidden",
    "reason" : "forbidden"
  } ],
  "message" : "Forbidden"
}
    at com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:145)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:423)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:343)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:460)
    at StorageSample.main(StorageSample.java:194)
And I have "isOwner" as my permission.

According to: http://ift.tt/1MJA59N

The error is because "The requested operation is forbidden and cannot be completed."

So how can I overcome this and upload the file using a Java program.

Thanks in advance.

Aucun commentaire:

Enregistrer un commentaire