Я создал файл jrxml
с помощью инструмента iReport Designer
. Он отлично работает в инструменте iReport Designer. Теперь я пытаюсь скомпилировать этот файл jrxml
с помощью программы Java
. Запрос MySQL
есть в файле jrxml
. Я думаю, что файл jrxml в порядке, так как он работает так, как ожидалось, в инструменте iReport Designer
.Мой jrxml-файл создает пустой файл PDF
Когда я запускаю мою Java программу для компиляции и генераций PDF
файла отчета с JREmptyDataSource
, он генерирует pdf
без каких-либо данных, заполненных, но графические анс статических текстов есть в созданном PDF. Я знаю, что нет данных, так как я использовал JREmptyDataSource
.
Тогда я создал подключение к моей базе данных. Если все в порядке, оно должно сгенерировать файл PDF
с соответствующими данными. Не так ли?
Это мой код
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/my_db", "root", "123");
System.out.println("INFO: Connected succesfully to the database!");
JasperReport jasperReport = JasperCompileManager.compileReport("J:/reports using iReport tools/installmentListForACustomer.jrxml");
// JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,new HashMap(), new JREmptyDataSource());
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,new HashMap(), c);
JasperExportManager.exportReportToPdfFile(jasperPrint, "fromXml.pdf");
System.out.println("INFO: Success!");
} catch (Exception e) {
System.out.println("EXCEPTION: " + e + " \n");
e.printStackTrace();
}
Но вопрос, даже если он генерирует pdf
файл, он не содержит ничего. Даже статические тексты и графика. он заполнен.
Строка запроса находится в файле jrxml
. Соединение с базой данных также успешное. Я не могу понять, почему он создает пустой PDF-файл.
Не могли бы вы объяснить мне, почему он не создает файл pdf с соответствующим в базе данных?