| Summary: | NPE is thrown out when preview radar type chart for birt runtime | ||||||
|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | Yong Jiang <yjiang> | ||||
| Component: | BIRT | Assignee: | Xiaoying Gu <bluesoldier> | ||||
| Status: | CLOSED FIXED | QA Contact: | Yong Jiang <yjiang> | ||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | bluesoldier, Lionel.wyl, zqian | ||||
| Version: | 2.6.0 | ||||||
| Target Milestone: | 2.6.0 RC4 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
Radar chart as an example is not supported to preview in BIRT runtime. Although Radar chart is not supported in runtime environment, need to display error gracefully, and other charts should preview correctly. This is not a regression bug, since it's a new example chart item. Although Radar chart is not supported to preview in runtime environment, display error chart gracefully and other items can preview correctly. Need to support Radar in runtime environment. We need a new runtime example plugin which contains Radar chart without UI. Even if a new plugin was created to include radar model API, it still can not run in runtime package, it just could run in all-in-one. The root reason is that the new plugin implements an emf extension for chart engine loading radar model at runtime. But due to the special class loading mechanism in lib folder in birt runtime package, the emf EcorePlugin will not register radar model API, it failed to load radar model. After discussing with Zhiqiang, we need further investigation to find a new way to support radar chart, it has plenty of works for chart engine to support it. We will defer this bug to 2.6.1. Thanks. Fixed by defining a new extension point in chart engine for custom chart model. User should implement this extension point for custom chart model. Please add org.eclipse.birt.chart.examples.core plug-in into runtime package, and please add this as API into lib folder. Thanks. Fixed. verified in daily build v20100607-0630 |
Created attachment 170301 [details] test report Description: NPE is thrown out when preview radar type chart for birt runtime Test Build: BIRT2.6.0 v20100528-0630 Step to reproduce: 1. deploy runtime on tomcat 6.0.16 2. preview attached report Expect result: report can preview Actual result: NPE is thrown out Error log: Caused by: java.lang.NullPointerException at org.eclipse.birt.chart.reportitem.ChartReportItemImpl.validate(ChartReportItemImpl.java:822) at org.eclipse.birt.report.model.api.validators.ExtensionValidator.doValidate(ExtensionValidator.java:142) at org.eclipse.birt.report.model.api.validators.ExtensionValidator.validate(ExtensionValidator.java:81) at org.eclipse.birt.report.model.validators.ValidationNode.perform(ValidationNode.java:133) at org.eclipse.birt.report.model.validators.ValidationExecutor.perform(ValidationExecutor.java:79) at org.eclipse.birt.report.model.core.DesignElement.validateWithContents(DesignElement.java:2121) at org.eclipse.birt.report.model.core.DesignElement.validateWithContents(DesignElement.java:2130) at org.eclipse.birt.report.model.core.Module.semanticCheck(Module.java:1168) at org.eclipse.birt.report.model.core.LayoutModuleImpl.semanticCheck(LayoutModuleImpl.java:292) at org.eclipse.birt.report.model.core.LayoutModuleImpl.doClone(LayoutModuleImpl.java:1061) at org.eclipse.birt.report.model.elements.ReportDesignImpl.doClone(ReportDesignImpl.java:309) at org.eclipse.birt.report.model.api.ModuleHandle.copy(ModuleHandle.java:3050) at org.eclipse.birt.report.engine.api.impl.ReportRunnable.cloneRunnable(ReportRunnable.java:132) at org.eclipse.birt.report.engine.api.impl.EngineTask.prepareDesign(EngineTask.java:1655) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:96) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:75) at org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(ReportEngineService.java:920) at org.eclipse.birt.report.service.BirtViewerReportService.runAndRenderReport(BirtViewerReportService.java:973) at org.eclipse.birt.report.service.actionhandler.BirtRunAndRenderActionHandler.__execute(BirtRunAndRenderActionHandler.java:76) at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:90) ... 23 more