2016-06-22 2 views
0

Я работаю над библиотекой JasperReports в моем проекте jsf. Прежде всего, я просто разрабатываю простой проект по этому вопросу tutorialjava.lang.ClassCastException: не удается назначить экземпляр net.sf.jasperreports.engine.base.JRBaseImage для поля

Но в этом руководстве нет руководства по установке полных библиотек JasperReports.

Я стараюсь это мой себе, но получить исключение:

java.lang.ClassCastException: не может присвоить экземпляр net.sf.jasperreports.engine.base.JRBaseImage в поле net.sf.jasperreports.engine .base.JRBasePen.penContainer типа net.sf.jasperreports.engine.JRPenContainer в экземпляре net.sf.jasperreports.engine.base.JRBasePen

и

Caused by: java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseImage to field net.sf.jasperreports.engine.base.JRBasePen.penContainer of type net.sf.jasperreports.engine.JRPenContainer in instance of net.sf.jasperreports.engine.base.JRBasePen 
    at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2133) 

Вот мой метод, где я пытаюсь создать отчет:

JRBeanCollectionDataSource beanCollectionDataSource = new JRBeanCollectionDataSource(listOfStudent); 
String reportPath = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/reports/ChartReport.jasper"); 
JasperPrint jasperPrint = JasperFillManager.fillReport(reportPath, new HashMap(), beanCollectionDataSource); 
JasperExportManager.exportReportToPdfStream(jasperPrint, outputStream); 

и мои библиотеки эти я использую без гида:

enter image description here

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

+0

Вы уверены, что использовать такую ​​старую версию (1.2.0)? –

+0

не нужно. –

+1

В этом случае лучше использовать версию 6.2.2 (последняя версия). Вы можете попробовать использовать зависимости maven –

ответ

0

У вас есть как jasperreports-1.2.0.jar (который очень старый, как наблюдал Alex K), так и jasperreports-javaflow.jar (неуказанная версия) на пути к классу проекта.

jasperreports-javaflow jars - варианты jasperreports jars с классами, предназначенными для Javaflow на основе подчиненного бегуна. У вас не должно быть jasperreports.jar и jasperreports-javaflow.jar на пути к классам; держите ваниль jasperreports.jar, если вам не нужен бегун для подчиненного Javaflow.

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