Страницы

Поиск по вопросам

среда, 10 июля 2019 г.

Непонятная ошибка при печати из JasperReport

Печатаю в консольном приложении через JasperReport-6 несколько тысяч заданий в день на разные сетевые принтеры. Периодически вылетает ошибка:
Ошибка:No suitable print service found. net.sf.jasperreports.engine.export.JRPrintServiceExporter.exportReport(JRPrintServiceExporter.java:323)
При повторной отправке задания все отлично. Отловить отладчиком не могу. Этих ошибок в день около 100, а заданий несколько тысяч. Печатаю вот так:
jasperPrint = JasperFillManager.fillReport(getClass().getResourceAsStream(fn), parameters, cn); if (!jasperPrint.getPages().isEmpty()) { PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet(); printRequestAttributeSet.add(new JobName("Picklist_ID" + picklistId + "", null)); if (ps != null) { System.out.println("PICKLIST_ID:" + picklistId + " WID:" + workshopId + " MS:" + ms + " " + curWorkMode.toString() + " PRINTER:" + ps.getName() + " " + new Date().toString() + " Prior" + priority); JRPrintServiceExporter exporter = new JRPrintServiceExporter(); exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); SimplePrintServiceExporterConfiguration conf = new SimplePrintServiceExporterConfiguration(); conf.setPrintRequestAttributeSet(printRequestAttributeSet); conf.setPrintServiceAttributeSet(ps.getAttributes()); conf.setDisplayPageDialog(Boolean.FALSE); conf.setDisplayPrintDialog(Boolean.FALSE); exporter.setConfiguration(conf); exporter.exportReport(); }}
Ошибка вылетает на последней строчке:
exporter.exportReport();


Ответ

Я бы попробовал вручную добавить, может доп информация если что всплывет printServiceAttributeSet.add(new PrinterName("Epson Stylus 820 ESC/P 2", null)); printServiceAttributeSet.add(new PrinterName("hp LaserJet 1320 PCL 6", null)); printServiceAttributeSet.add(new PrinterName("PDFCreator", null));

Комментариев нет:

Отправить комментарий