sql >> Database >  >> NoSQL >> MongoDB

Genereer PDF met JasperReports Library en MongoDB

Het gebruik van de JRBeanCollectionDataSource is niet de juiste manier om de MongoDB-connector te gebruiken. Bekijk deze test die bij de Jaspersoft MongoDB Connector-bron wordt geleverd:

MongoDbDatasource/src/test/java/com/jaspersoft/mongodb/ReportTest.java

Zowel de binaire connector als de bron staan ​​op de projectpagina .

Om dit antwoord op zichzelf te houden, is hier een codefragment dat laat zien hoe u een MongoDB-rapport vult. Het is een aangepast uittreksel uit het bestand dat ik hierboven vermeld.

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();
  }
}


  1. Mongodb ERROR:onderliggende proces mislukt, afgesloten met foutnummer 51

  2. Wat is de juiste aanpak om veel records in MongoDB bij te werken met Mongoose

  3. doRedis met vreemde socketverbindingsfout in Ubuntu Linux, R en RStudio

  4. Hoe zeg je... match wanneer veld een getal is... in mongodb?