MongoDb 3.0.1 java驱动GridFs错误

时间:2015-05-12 15:36:14

标签: java mongodb gridfs

我正在将一个应用程序升级到Mongo java驱动程序3.0.1。一切正常,除了GridFs文件保存。它适用于旧的Java驱动程序(2.12.4)。现在我正在使用mongodb-driver-core y mongodb-driver 3.0.1。

我的代码:

DB mongoDbFiles;
GridFS attachFile;
GridFSInputFile gfsFile;
mongoDbFiles = mongo.getDB("UserWebFiles");
attachFile = new GridFS(mongoDbFiles, "UserFiles");
    ..........
gfsFile = attachFile.createFile(new File("C:/dxl/" + (String) vFileNames.get(k)));
gfsFile.setFilename((String) vFileNames.get(k));
gfsFile.save();

在保存中给出错误:   com.mongodb.MongoException:无法保存块

引起:java.io.IOException:Stream Closed

新驱动程序中的GridF有什么变化吗?

正如我所说,它与驱动程序2.12.4配合得很好。 Java版本8(jdk 1.8.0_25 - 32位)

提前致谢,

奥古斯托

1 个答案:

答案 0 :(得分:2)

我在mongo-driver-3.0.1.jar文件中发现了这个问题。我纠正了一个GrisFS.createFile函数。我再次编译了jar文件,现在效果很好。

如果有人有这个问题,我可以发送jar文件。我会尝试将修正发送给Mongo。