[#9901] - Custom Visualization Component Error When No Data

Category:
Bug report
Priority:
High
Status:
New
Project: Severity:
Major
Resolution:
Open
Component: Reproducibility:
Always
Assigned to:
0

When a query returns no data, it breaks the custom visualization component. This error message appears in the server logs.

2017-09-07 08:09:13,807 ERROR AsyncJasperPrintAccessor,pool-6-thread-67:321 - Error during report execution
java.lang.NullPointerException
at com.jaspersoft.jasperreports.customvisualization.fill.CVFillComponent.evaluateComponent(CVFillComponent.java:171)
at com.jaspersoft.jasperreports.customvisualization.fill.CVFillComponent.evaluate(CVFillComponent.java:144)
at net.sf.jasperreports.engine.fill.JRFillComponentElement.evaluate(JRFillComponentElement.java:110)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:381)
at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:500)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2022)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:748)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:255)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:115)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:580)
at net.sf.jasperreports.parts.subreport.SubreportFillPart.fill(SubreportFillPart.java:177)
at net.sf.jasperreports.engine.part.FillPart.fill(FillPart.java:77)
at net.sf.jasperreports.engine.fill.PartReportFiller.fillPart(PartReportFiller.java:400)
at net.sf.jasperreports.engine.fill.PartReportFiller.fillParts(PartReportFiller.java:385)
at net.sf.jasperreports.engine.fill.PartReportFiller.fillDetail(PartReportFiller.java:337)
at net.sf.jasperreports.engine.fill.PartReportFiller.fillReport(PartReportFiller.java:280)
at net.sf.jasperreports.engine.fill.PartReportFiller.fill(PartReportFiller.java:214)
at net.sf.jasperreports.engine.fill.BaseFillHandle$ReportFill.run(BaseFillHandle.java:123)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$SynchronousExecutor.execute(EngineServiceImpl.java:924)
at net.sf.jasperreports.engine.fill.BaseFillHandle.startFill(BaseFillHandle.java:169)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$AsynchronousReportFiller.fillReport(EngineServiceImpl.java:880)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl.fillReport(EngineServiceImpl.java:1829)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportFill.runWithDataSource(EngineServiceImpl.java:1169)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportFill.runReport(EngineServiceImpl.java:1051)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportRunnable.run(EngineServiceImpl.java:946)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

Instead, it should render the CVC passing an empty array for the instanceData.series property.

Custom Visualization Component
StevenCrawford's picture
Joined: Feb 19 2013 - 8:09am
Last seen: 9 hours 12 min ago
Feedback