In iReport funktioniert alles großartig, so wie ich es wollte. Ich verwende die Datei hibernate.cfg.xml, in der die Sitzungsfabrik definiert ist.
Mein Problem begann, als ich meine *.jrxml-Datei in die Java-Webanwendung integrieren wollte.Webanwendungen werden auf Maven mit Spring Framework erstellt. Ich habe also die zusätzliche Datei applicationContext.xml, in der die Hibernate-Session-Factory ebenfalls wie in hibernate.cfg.xml definiert ist.
Die Frage ist, ob es möglich ist, dass es funktioniert. Verwenden von @autowired für Bean aus applicationContext.xml?
Code: Select all
@Autowired
@Qualifier("binderSessionFactory")
protected SessionFactory sessionFactory;
Java Code:
Code: Select all
OutputStream outputStream = response.getOutputStream();
Map parameters = (Map) model.get("parameters");
URL reportTemplate = getClass().getClassLoader().getResource("pathToFile/file.jrxml");
JasperReport jasperReport = JasperCompileManager.compileReport(reportTemplate.getPath());
jasperPrint = JasperFillManager.fillReport(jasperReport, parameters);
JasperExportManager.exportReportToPdfStream(jasperPrint, outputStream);