|
|||
|
Our application uses the BIRT 2.5.0 runtime engine to generate a variety of reports. This has been working well for quite a long time. Due to a completely unrelated requirement I added the Xerces XML parser to our classpath (xercesImpl-2.6.1.jar). This caused the BIRT engine to begin to fail with a strange exception:
09/07/01 13:45:50:819 WARN reporting.BirtManager: Exception generating report element (Community Profile): java.lang.NullPointerException at org.eclipse.birt.chart.reportitem.ChartReportItemImpl.doCompatibility(ChartReportItemImpl.java:308) at org.eclipse.birt.chart.reportitem.ChartReportItemImpl.deserialize(ChartReportItemImpl.java:288) at org.eclipse.birt.report.model.extension.PeerExtensibilityProvider.initializeReportItem(PeerExtensibilityProvider.java:582) at org.eclipse.birt.report.model.elements.ExtendedItem.initializeReportItem(ExtendedItem.java:305) at org.eclipse.birt.report.model.elements.ExtendedItem.doCheck(ExtendedItem.java:642) at org.eclipse.birt.report.model.elements.ExtendedItem.checkCompatibility(ExtendedItem.java:604) at org.eclipse.birt.report.model.parser.ModuleParserHandler.handleExtendedItemCompatibility(ModuleParserHandler.java:431) at org.eclipse.birt.report.model.parser.ModuleParserHandler.endDocument(ModuleParserHandler.java:393) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source) The code in question is simply looking for some flag in the XML: private void doCompatibility( Chart cm ) { // we use the base series' format specifier for category legend // before. // for compatibility after the fix of #237578 if ( cm.getLegend( ).getItemType( ) == LegendItemType.CATEGORIES_LITERAL ) I'm assuming that when I added the parser BIRT began to use it, and somehow there is a difference in how the XML is being parsed. How can I get these two to coexist? |
![]() |
| Thread Tools | |
| Display Modes | |
|
|