JRBeanCollectionDataSource का उपयोग करना MongoDB कनेक्टर का उपयोग करने का सही तरीका नहीं है। Jaspersoft MongoDB Connector स्रोत के साथ आने वाले इस परीक्षण पर एक नज़र डालें:
MongoDbDatasource/src/test/java/com/jaspersoft/mongodb/ReportTest.java
बाइनरी कनेक्टर और स्रोत दोनों प्रोजेक्ट पेज पर हैं ।
इस उत्तर को स्व-निहित रखने के लिए, यहां एक कोड स्निपेट दिखाया गया है कि MongoDB रिपोर्ट कैसे भरें। यह मेरे द्वारा ऊपर उल्लिखित फ़ाइल का एक संशोधित उद्धरण है।
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();
}
}