Sử dụng JRBeanCollectionDataSource không phải là cách thích hợp để sử dụng trình kết nối MongoDB. Hãy xem thử nghiệm này đi kèm với nguồn Trình kết nối Jaspersoft MongoDB:
MongoDbDatasource / src / test / java / com / jaspersoft / mongodb / ReportTest.java
Cả trình kết nối nhị phân và nguồn đều nằm trên trang dự án .
Để giữ kín câu trả lời này, đây là đoạn mã cho thấy cách điền vào báo cáo MongoDB. Đó là bản trích xuất đã sửa đổi từ tệp mà tôi đã đề cập ở trên.
String mongoURI = "mongodb://bdsandbox6:27017/test";
MongoDbConnection connection = null;
Map<String, Object> parameters = new HashMap<String, Object>();
try {
connection = new MongoDbConnection(mongoURI, null, null);
parameters.put(MongoDbDataSource.CONNECTION, connection);
File jasperFile;
jasperFile = new File("MongoDbReport.jasper");
JasperCompileManager.compileReportToFile("MongoDbReport.jrxml", "MongoDbReport.jasper");
JasperFillManager.fillReportToFile("MongoDbReport.jasper", parameters);
JasperExportManager.exportReportToPdfFile("MongoDbReport.jrprint");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.close();
}
}