Runtime error if a chart with "chart customizers" is used

Description

I created a report with a chart with Jasper Studio. For the chart I used a Chart customizer .

Without using hte chart customizer JasperStarter is running well. With a chart customizer I got the following error:
Exception in thread "main" net.sf.jasperreports.engine.JRRuntimeException: Could not create chart customizer instance.
at net.sf.jasperreports.engine.fill.JRFillChart.createAndInitCustomizer(JRFillChart.java:357)
at net.sf.jasperreports.engine.fill.JRFillChart.<init>(JRFillChart.java:318)
at net.sf.jasperreports.engine.fill.JRFillObjectFactory.visitChart(JRFillObjectFactory.java:704)
at net.sf.jasperreports.engine.base.JRBaseChart.visit(JRBaseChart.java:578)
at net.sf.jasperreports.engine.JRAbstractObjectFactory.getVisitResult(JRAbstractObjectFactory.java:88)
at net.sf.jasperreports.engine.fill.JRFillElementGroup.<init>(JRFillElementGroup.java:82)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.<init>(JRFillElementContainer.java:95)
at net.sf.jasperreports.engine.fill.JRFillBand.<init>(JRFillBand.java:121)
at net.sf.jasperreports.engine.fill.JRFillObjectFactory.getBand(JRFillObjectFactory.java:524)
at net.sf.jasperreports.engine.fill.JRBaseFiller.createFillBand(JRBaseFiller.java:359)
at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:296)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:69)
at net.sf.jasperreports.engine.fill.JRFillSubreport.initSubreportFiller(JRFillSubreport.java:565)
at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:477)
at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(JRFillSubreport.java:354)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:383)
at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:506)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2412)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:761)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:240)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:99)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:607)
at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:405)
at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:140)
at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:667)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:983)
at de.cenote.jasperstarter.Report.fill(Report.java:245)
at de.cenote.jasperstarter.App.processReport(App.java:217)
at de.cenote.jasperstarter.App.main(App.java:102)
Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.customizers.shape.LineDotShapeCustomizer
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:174)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:114)
at net.sf.jasperreports.engine.fill.JRFillChart.createAndInitCustomizer(JRFillChart.java:352)
... 28 more

Starting parameter for JasperStarter: jasperstarter.exe --locale=en_EN pr chart_test -t xml -f view --data-file ..
output.xml --xml-xpath=/root/measurements/measurement -o test

Is there a trick to embed the chart customizers? I am not so familiar with Jasper.

Environment

None

Activity

Show:
Volker Voßkämper
November 7, 2018, 6:44 AM

Documentation is needed for next release.

Michael Rossol
November 7, 2018, 11:23 AM

Hello Volker,
I just tried the "jasperstarter-3.3.0-SNAPSHOT-master-6b6c446-bin.zip". Without any *.jar files in jdbc folder I get a runtime error. At least the following files are needed for running without error:

  • jasperreports-chart-customizers-6.5.1.jar

  • spring-beans-3.2.18.RELEASE.jar

  • spring-core-3.2.18.RELEASE.jar

Michael Rossol
November 7, 2018, 11:38 AM

Regarding the output:

  • from my point of view it's no problem, Jasperstarter will be started from my pyqt GUI.

  • perhaps there is a way to smother the output.

  • the output comes only when chart customizers are used.

  • so currently there is a limitation either because of runtime error while missing .jar classes or broken stdout. The result is the same...

Volker Voßkämper
November 7, 2018, 2:31 PM

It was only in jasperstarter-3.3.0-SNAPSHOT-master-b631035-bin.zip
I removed it because of JAS-97.
The output comes always and it will prevent from using stdout for output files.
I will expand documentation about this.

Volker Voßkämper
November 23, 2018, 4:08 PM

Now fixed the problem, so the libs could be included.

Assignee

Volker Voßkämper

Reporter

Michael Rossol

Labels

None

Components

Fix versions

Affects versions

Priority

Major
Configure