diff --git a/designer-chart/src/main/java/com/fr/design/chartx/AbstractChartDataPane.java b/designer-chart/src/main/java/com/fr/design/chartx/AbstractChartDataPane.java index d072905e6..04412c0a5 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/AbstractChartDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/AbstractChartDataPane.java @@ -5,8 +5,11 @@ import com.fr.chartx.data.ChartDataDefinitionProvider; import com.fr.design.gui.frpane.AttributeChangeListener; import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.plugin.chart.vanchart.VanChart; +import com.fr.stable.AssistUtils; import java.awt.BorderLayout; +import java.lang.reflect.ParameterizedType; +import java.lang.reflect.Type; /** * Created by shine on 2019/4/15. @@ -42,12 +45,31 @@ public abstract class AbstractChartDataPane { @Override public void populateBean(CellDataDefinition ob) { + if (ob == null || ob.getColumnFieldCollection() == null) { + return; + } + Type dataType = ((ParameterizedType) cellDataFieldsPane.getClass().getGenericSuperclass()).getActualTypeArguments()[0]; if (AssistUtils.equals(ob.getColumnFieldCollection().getClass(), dataType)) { cellDataFieldsPane.populateBean(ob.getColumnFieldCollection()); diff --git a/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java b/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java index 91d1a0688..5875b480a 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java @@ -100,6 +100,10 @@ public class DataSetPane extends FurtherBasicBeanPane { @Override public void populateBean(DataSetDefinition ob) { + if (ob == null || ob.getColumnFieldCollection() == null) { + return; + } + refreshBoxList(); checkBoxUse();