Problems (NullPointer or ArrayIndex) if no data available for barchart
| Newsgroups | gmane.comp.krysalis.jcharts.user |
|---|---|
| Message-ID | <4564869A58C03F4A8E95BAC154698AB8FF5C3C@s01b1f4i-bu.flur.zuerich.ubs.ch> |
hi all
we are generating clusteredbarcharts based on the result of some database selects, so the data to display is not static.
we have a problem if there is no data. I have tried different ways to tweak this issue, but always ran into troubles:
I'm using jcharts 0.7.4 (the posted methods are the same in 0.7.5)
- legendlabels and data array (double[][]) are null
java.lang.NullPointerException
at org.jCharts.chartData.AxisChartDataSet.getNumberOfDataSets(AxisChartDataSet.java:136)
at org.jCharts.chartData.AxisDataSeries.addIAxisPlotDataSet(AxisDataSeries.java:166)
code which throws exception [AxisChartDataSet.getNumberOfDataSets]:
public final int getNumberOfDataSets()
{
return this.data.length;
}
- legenlabels is null, data array is new double[0][0];
java.lang.ArrayIndexOutOfBoundsException: 0
at org.jCharts.chartData.DataSet.getNumberOfDataItems(DataSet.java:148)
at org.jCharts.chartData.AxisDataSeries.addIAxisPlotDataSet(AxisDataSeries.java:168)
code which throws exception [DataSet.getNumberOfDataItems]:
public int getNumberOfDataItems()
{
return this.data[ 0 ].length;
}
is there any reason, why null and/or length is not checked in those methods ??
is there any other way to get a empty chart, I do set
setUserDefinedScale(0, 2)
setNumItems(5)
regards
tamer
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id56&alloc_id438&op=click