Home
Analytics
BIRT + XML Parser (Xerces)
kevinroll
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?
Find more posts tagged with
Comments
Fred81
Hi,
I'm having the same problem... did you manage a way to resolve this issue?
Thanks
Fred