无法从BlobStore读取文件

时间:2011-09-06 13:48:23

标签: google-app-engine java-ee blobstore

我一直在尝试直接从BlobStore编写和读取文件,但它不起作用。 问题是我打开像file = fileService.getBlobFile(blobKey);这样的文件并且它不会抛出任何异常,但是在下一行中我调用readChannel = fileService.openReadChannel(file, false);并且抛出一个FileNotFoundException。

我很困惑为什么第一行没有抛出异常。

Here is the same issue

不幸的是没有人回答这个问题。

1 个答案:

答案 0 :(得分:1)

我在写入或删除方面没有任何问题,但在FileNotFoundException使用openReadChannel(...)时,我也得到AppEngineFile

我尝试使用从其构造函数创建的AppEngineFile完整路径。我尝试过使用AppEngineFile获得的getBlobFile(...),就像你上面那样。无论哪种方式,当AppEngineFile传递给openReadChannel(...)时,都会抛出FileNotFoundException

我的解决方法是让BlobstoreService.serve(...)完成阅读和发送文件的所有工作。我怀疑使用FileService来从AppEngineFile读取还不支持(我使用的是1.6.0),所以读取必须通过BlobstoreService({{1 }},serve(...)fetchData(...))。