2012-06-12 4 views
1

Я обновляю свою версию JasperReports, как указано в названии. Я мало знаю о JasperReports Обновление версии. Что все, что я должен изменить, чтобы заставить его работать. У меня есть последние .jar файлы всего. Но когда я печатаю отчет .PDF, он дает мне эту ошибку.Обновление JasperReports 1.3.1 до JasperReports 4.6

error:could not open file because its damaged or not supported. 

В затмении это показывает, что это исключение

java.lang.NoSuchFieldError: PRINTSCALING at 
net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExpor‌​ter.java:532) at 
net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java‌​:396) at 
net.sf.jasperreports.engine.JasperExportManager.exportToPdf(JasperExportManager.‌​java:212) at 
net.sf.jasperreports.engine.JasperExportManager.exportReportToPdf(JasperExportMa‌​nager.java:536) at 
com.sibisoft.northstar.util.JasperReportGenerator.getPdfByteArray(JasperReportGe‌​nerator.java:679) 

Пожалуйста, помогите мне.

+0

Если возможно, добавьте несколько снимков/ссылок на экран. –

+0

java.lang.NoSuchFieldError: PRINTSCALING \t на net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream (JRPdfExporter.java:532) \t на net.sf.jasperreports.engine.export.JRPdfExporter.exportReport (JRPdfExporter. Java: 396) \t в net.sf.jasperreports.engine.JasperExportManager.exportToPdf (JasperExportManager.java:212) \t в net.sf.jasperreports.engine.JasperExportManager.exportReportToPdf (JasperExportManager.java:536) \t на ком .sibisoft.northstar.util.JasperReportGenerator.getPdfByteArray (JasperReportGenerator.java:679) –

+0

это исключение –

ответ

4

Проблема не в JasperReports, а в версии библиотеки iText, которую вы используете. Вам необходимо загрузить версию 2.1.7 для работы с этой версией JasperReports. Вы можете получить его с here.


Я случайно знаю, что это одно с верхней частью моей головы, когда я столкнулся с ним в прошлом, но как полезная нота в будущем, это процесс, который я использовал, чтобы понять это изначально.

Поскольку JasperReports является открытым исходным кодом, код можно легко найти в Интернете. Итак, я google:

site:grepcode.com net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream

Чтобы найти код онлайн. (GrepCode в основном предоставляет классный сайт для просмотра многих исходных кодов проектов с открытым исходным кодом.)

В верхней части страницы GrepCode у них есть версия проекта, поэтому убедитесь, что она указывает на то, какую версию вы используете ,

Затем найдите способ или номер строки в сообщении об ошибке.

Отсюда просто отлаживается локальный код. Вы можете видеть, что такое класс-нарушитель и какой пакет он принадлежит. В этом случае он указывает на itext libray как на виновника.

Надеюсь, что это поможет вам в будущем и счастливой отчетности.

+0

за вашу помощь. Я сейчас пытаюсь это сделать. я позволю тебе добиться успеха. спасибо за вашу помощь –

+0

спасибо, что я пробовал ваш способ отладки проблемы. Я импортировал исходный файл jar. Это мне очень помогло. так как я могу точно знать причину, по которой она давала эту ошибку. –

+0

Так вы его работали? –

Смежные вопросы