Следуя официальной документации, я пытался прочитать пример файла, который я сохранил в GCS, но пока единственное, что у меня есть, это NullPointerException
InputStream sampleStream() {
String bucketName = "sample";
String fileName = "sample";
log.info("Loading file from GCS [bucket: {}, key: {}]", bucketName, fileName);
try {
GcsInputChannel readChannel = gcsService().openReadChannel(new GcsFilename(bucketName, fileName), 0);
return Channels.newInputStream(readChannel);
} catch(Exception ex) {
log.error("Error loading file...", ex);
}
}
private GcsService gcsService() {
return GcsServiceFactory
.createGcsService(new RetryParams.Builder()
.initialRetryDelayMillis(10).retryMaxAttempts(10)
.totalRetryPeriodMillis(15000)
.build()
);
}
Но все же повторяю попыткувремя ...
RetryHelper(14.16 ms, 1 attempts, com.google.appengine.tools.cloudstorage.SimpleGcsInputChannelImpl$1@278ef74): Attempt #1 failed [java.io.IOException: java.lang.NullPointerException], sleeping for 9 ms
NullPointerException генерируется всякий раз, когда .read()
вызывается в результирующем InputStream.
Я пропускаю учетные данные (или путь к моему локальному файлу аутентификации .json) где-то или я должен учитывать больше вещей?