Преобразование файла .jrxml в файл .pdf - PullRequest
4 голосов
/ 09 марта 2012

Я провел несколько нагрузочных тестов в моем веб-приложении.Проблема в том, что результаты приложения нагрузочного теста представлены в формате .jrxml.Результат содержит графики графиков и определенные параметры.Я знаю, что это формат яшмы.Поэтому, если я преобразую файл .jrxml в файл .pdf, я смогу увидеть все диаграммы, графики и значения ...

Я предполагаю, что независимо от содержания .jrxml в диаграмме или графике сгенерированный PDF-файл будетсодержат соответствующие значения, так как шаблон подготовлен в соответствии с API для построения диаграмм.

Могу ли я создать отчет jasper без указания соединения с источником данных .. Мне не нужно соединение с источником данных, поскольку мой файл .jrxml не содержит атрибут источника данных ..Если да, как я могу достичь этого .. Пожалуйста, предложите

Ответы [ 4 ]

7 голосов
/ 09 марта 2012

Если у вас нет источника данных, вы можете попробовать это

jasperReport = JasperCompileManager.compileReport(sourceFileName);
jasperPrint = JasperFillManager.fillReport(jasperReport,jasperParameter,new  JREmptyDataSource()); 
JasperExportManager.exportReportToPdfFile(jasperPrint, "D://Test.pdf");

Даже если у вас нет источника данных и его статический отчет дает данные JREmptyDataSource требуется.

Проверьте ответ для более подробного объяснения

Пустой PDF даже с самым простым Jasperreport jrxml

0 голосов
/ 12 марта 2012

Если вы не используете какой-либо источник данных, вы должны выбрать «Пустой источник данных» или «Образец источника данных» из источников данных, если вы используете примеры отчетов, но, как я думаю, если вы создаете конкретный отчет для своего проекта, тогда Вы должны выбрать источник данных.

0 голосов
/ 09 марта 2012

Если под «соединением с источником данных» вы подразумеваете источник данных с поддержкой JDBC, то вы можете выполнить отчет, не требуя этого.

Существуют другие реализации источников данных, которые реализуют net.sf.jasperreports.engine.JRDataSource (например, JRCsvDataSource ), которые "легче", чем ударбаза данных - полезна для тестирования.

Однако для модульных тестов я в итоге создаю фиктивную реализацию из JRDataSource , которая реализует next () и getFieldValue () и читает из объектов Collection of Map (вместо этого он может читать из файла и т. Д.).Это был самый простой и быстрый подход к тестированию для меня.

Какую часть вы тестировали под нагрузкой?Обычно интересными частями для стресс-теста являются:

  • Заполнение отчета Jasper (выполнение запроса, чтение результатов и заполнение объекта JasperPrint)

  • Экспорт Jasper (создание формата вывода отчета - HTML, PDF, XLS и т. Д.)

0 голосов
/ 09 марта 2012

.jrxml является выводом дизайнера jasper. Когда вы его компилируете, вы получаете его разобранную форму .jasper. После этого вы заполняете этот объект данными, параметрами, переменными и получаете объект .print. И, наконец, вы можете экспортировать этот объект печати любой формат, поддерживаемый отчетом Jasper, такой как PDF, CVS, HTML, Excel ...

...