Issue Description:When running a report that uses scriptlets, the following error occurs: | [toc] |
net.sf.jasperreports.engine.JRException: net.sf.jasperreports.engine.JRException: Error creating scriptlet class instance : com.escout.app.reportWriter.InvoiceDetailsScriptlet at com.jaspersoft.studio.editor.preview.view.control.ReportControler.fillReport(ReportControler.java:468) at com.jaspersoft.studio.editor.preview.view.control.ReportControler.access$18(ReportControler.java:443) at com.jaspersoft.studio.editor.preview.view.control.ReportControler$4.run(ReportControler.java:335) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: net.sf.jasperreports.engine.JRException: Error creating scriptlet class instance : com.escout.app.reportWriter.InvoiceDetailsScriptlet at net.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriptlet(DefaultScriptletFactory.java:118) at net.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriplets(DefaultScriptletFactory.java:69) at net.sf.jasperreports.engine.fill.JRFillDataset.createScriptlets(JRFillDataset.java:507) at net.sf.jasperreports.engine.fill.JRFillDataset.setParameterValues(JRFillDataset.java:626) at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1313) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:931) at net.sf.jasperreports.engine.fill.BaseFillHandle$ReportFiller.run(BaseFillHandle.java:120) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCastException: com.escout.app.reportWriter.InvoiceDetailsScriptlet cannot be cast to net.sf.jasperreports.engine.JRAbstractScriptlet at net.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriptlet(DefaultScriptletFactory.java:110) ... 7 more
Resolution:
This exception can indicate a problem with how the java class is implemented or used. Methods from that class are called in the report and are based on what they are inherting. Reviewing the code, the methods were not inheriting from the right class. To fix this, the following line was added to the problematic java class:
import net.sf.jasperreports.engine.*
Ref. Case #00056437
Recommended Comments
There are no comments to display.