Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.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
无法从我的Google应用程序引擎Servlet(Java)在我的Google云存储中存储对象_Java_Google App Engine_Google Cloud Storage - Fatal编程技术网

无法从我的Google应用程序引擎Servlet(Java)在我的Google云存储中存储对象

无法从我的Google应用程序引擎Servlet(Java)在我的Google云存储中存储对象,java,google-app-engine,google-cloud-storage,Java,Google App Engine,Google Cloud Storage,我正在使用我的应用程序引擎允许应用程序上载文件。 该文件是通过HTTP POST接收的,我正在尝试将其存储在Google存储中 我的服务器代码 GcsFileOptions instance = GcsFileOptions.getDefaultInstance(); GcsFilename fileName = new GcsFilename("my-bucket", "file.dat"); GcsOutputChannel outputChannel; log.info("Saving

我正在使用我的应用程序引擎允许应用程序上载文件。 该文件是通过HTTP POST接收的,我正在尝试将其存储在Google存储中

我的服务器代码

GcsFileOptions instance = GcsFileOptions.getDefaultInstance();
GcsFilename fileName = new GcsFilename("my-bucket", "file.dat");
GcsOutputChannel outputChannel;

log.info("Saving " + fileName + " to " + instance);

outputChannel = gcsService.createOrReplace(fileName, instance);
copy(req.getInputStream(), Channels.newOutputStream(outputChannel));
中间的日志条目产生;
com.my.app.Servlet: Saving GcsFilename(my-bucket, file.dat) to GcsFileOptions [userMetadata={}]
这导致了例外

com.google.appengine.tools.cloudstorage.RetriesExhaustedException: RetryHelper(5.644 s, 10 attempts, com.google.appengine.tools.cloudstorage.GcsServiceImpl$1@1af95fcc): Too many failures, giving up
    at com.google.appengine.tools.cloudstorage.RetryHelper.doRetry(RetryHelper.java:127)
    at com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:166)
    at com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:156)
    at com.google.appengine.tools.cloudstorage.GcsServiceImpl.createOrReplace(GcsServiceImpl.java:70)
    at com.my.app.Servlet.saveFile(Servlet.java:128)
    at com.my.app.Servlet.doPost(Servlet.java:107)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
... <Cut by submitter>
Caused by: java.io.IOException: java.lang.NullPointerException
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.getInstance(LocalRawGcsService.java:186)
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.access$000(LocalRawGcsService.java:109)
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.ensureInitialized(LocalRawGcsService.java:194)
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.beginObjectCreation(LocalRawGcsService.java:249)
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.beginObjectCreation(LocalRawGcsService.java:92)
    at com.google.appengine.tools.cloudstorage.GcsServiceImpl$1.call(GcsServiceImpl.java:74)
    at com.google.appengine.tools.cloudstorage.GcsServiceImpl$1.call(GcsServiceImpl.java:70)
    at com.google.appengine.tools.cloudstorage.RetryHelper.doRetry(RetryHelper.java:108)
    ... 34 more
Caused by: java.lang.NullPointerException
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.<init>(LocalRawGcsService.java:123)
    at com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.getInstance(LocalRawGcsService.java:184) 
    ... 41 more 
com.google.appengine.tools.cloudstorage.retriesHaustedException:RetryHelper(5.644秒,10次尝试,com.google.appengine.tools.cloudstorage.GcsServiceImpl$1@1af95fcc):太多的失败,放弃
位于com.google.appengine.tools.cloudstorage.RetryHelper.doRetry(RetryHelper.java:127)
位于com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:166)
位于com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:156)
位于com.google.appengine.tools.cloudstorage.GcsServiceImpl.createOrReplace(GcsServiceImpl.java:70)
位于com.my.app.Servlet.saveFile(Servlet.java:128)
位于com.my.app.Servlet.doPost(Servlet.java:107)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
... 
原因:java.io.IOException:java.lang.NullPointerException
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.getInstance(LocalRawGcsService.java:186)
在com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.access$000(LocalRawGcsService.java:109)
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.ensureInitialized(LocalRawGcsService.java:194)
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.beginObjectCreation(LocalRawGcsService.java:249)
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService.beginObjectCreation(LocalRawGcsService.java:92)
在com.google.appengine.tools.cloudstorage.GcsServiceImpl$1.call(GcsServiceImpl.java:74)
在com.google.appengine.tools.cloudstorage.GcsServiceImpl$1.call(GcsServiceImpl.java:70)
位于com.google.appengine.tools.cloudstorage.RetryHelper.doRetry(RetryHelper.java:108)
... 34多
原因:java.lang.NullPointerException
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter。(LocalRawGcsService.java:123)
位于com.google.appengine.tools.cloudstorage.dev.LocalRawGcsService$BlobStorageAdapter.getInstance(LocalRawGcsService.java:184)
... 41多
已解决。这个问题(在类似情况下)已经在这里得到了回答: