Как экспортировать JasperReport в HTML, не сохраняя изображения на диске? - PullRequest
3 голосов
/ 24 ноября 2010

Я пытаюсь представить экспорт HTML в наш механизм отчетов на основе JasperReports.HTML-документ генерируется нормально, но проблемы начинаются, когда он содержит изображения.Изображения не являются частью HTML в отличие от PDF.

Решение, которое я нашел до сих пор, заключается в следующем:

JRHtmlExporter exporter = new JRHtmlExporter();

exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRHtmlExporterParameter.IS_OUTPUT_IMAGES_TO_DIR, Boolean.TRUE);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_DIR_NAME, "./images/");
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "/images/");
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, outputStream);

exporter.exportReport();

Таким образом, все изображения автоматически генерируются JasperReports и сохраняютсяв этой папке «изображения».На них также правильно ссылается файл HTML.

Проблема в том, что изображения слишком поздно сохраняются в папке, и пользователю необходимо обновить уже полученную страницу HTML, чтобы их увидеть.Это на самом деле нехорошо, а также я не понимаю, почему изображения должны быть сохранены, так как они все равно автоматически генерируются JasperReports.

Как я могу сказать JasperReports как-то хранить изображения в памяти и как пользовательбудет ли доступ к ним в этом случае?

1 Ответ

3 голосов
/ 02 декабря 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...