the first filed's java class is as following, and SQL
select count(a.PA01AI01) from p.PRH_PA01 as a failed with : Caused by: java.sql.SQLException: Error while executing SQL "select count(a.PA01AI01) from p.PRH_PA01 as a ": From line 1, column 16 to line 1, column 23: Column 'PA01AI01' not found in table 'a' public class PRH_PA01 { String PA01AI01; Date PA01AR01; String PA01BQ01; String PA01BD01; String PA01BI01; String PA01BI02; String PA01BD02; Long PA01CS01 ; String PA01DQ01 ; String PA01DQ02 ; Date PA01DR01; Date PA01DR02 ; Long PA01ES01; List<PRH_PA01CH> PRH_PA01CH; public String getPA01AI01() { return PA01AI01; } public void setPA01AI01(String pA01AI01) { PA01AI01 = pA01AI01; } public Date getPA01AR01() { return PA01AR01; } public void setPA01AR01(Date pA01AR01) { PA01AR01 = pA01AR01; } public String getPA01BQ01() { return PA01BQ01; } public void setPA01BQ01(String pA01BQ01) { PA01BQ01 = pA01BQ01; } public String getPA01BD01() { return PA01BD01; } public void setPA01BD01(String pA01BD01) { PA01BD01 = pA01BD01; } public String getPA01BI01() { return PA01BI01; } public void setPA01BI01(String pA01BI01) { PA01BI01 = pA01BI01; } public String getPA01BI02() { return PA01BI02; } public void setPA01BI02(String pA01BI02) { PA01BI02 = pA01BI02; } public String getPA01BD02() { return PA01BD02; } public void setPA01BD02(String pA01BD02) { PA01BD02 = pA01BD02; } public Long getPA01CS01() { return PA01CS01; } public void setPA01CS01(Long pA01CS01) { PA01CS01 = pA01CS01; } public String getPA01DQ01() { return PA01DQ01; } public void setPA01DQ01(String pA01DQ01) { PA01DQ01 = pA01DQ01; } public String getPA01DQ02() { return PA01DQ02; } public void setPA01DQ02(String pA01DQ02) { PA01DQ02 = pA01DQ02; } public Date getPA01DR01() { return PA01DR01; } public void setPA01DR01(Date pA01DR01) { PA01DR01 = pA01DR01; } public Date getPA01DR02() { return PA01DR02; } public void setPA01DR02(Date pA01DR02) { PA01DR02 = pA01DR02; } public Long getPA01ES01() { return PA01ES01; } public void setPA01ES01(Long pA01ES01) { PA01ES01 = pA01ES01; } public List<PRH_PA01CH> getPRH_PA01CH() { return PRH_PA01CH; } public void setPRH_PA01CH(List<PRH_PA01CH> pRH_PA01CH) { PRH_PA01CH = pRH_PA01CH; } } ------------------ 原始邮件 ------------------ 发件人: "xiaobo " <guxiaobo1...@qq.com>; 发送时间: 2022年2月11日(星期五) 晚上6:09 收件人: "dev"<dev@calcite.apache.org>; 主题: cannot be cast to class org.apache.calcite.runtime.FlatLists$ComparableList error Hi, Our testing code failed with the following error, can you help with it: Error while executing SQL "select count(1) from p.PRH_PA01 ": class com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 cannot be cast to class org.apache.calcite.runtime.FlatLists$ComparableList (com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 and org.apache.calcite.runtime.FlatLists$ComparableList are in unnamed module of loader 'app') at com.xsmartware.javatest.pbc2p.CalciteBaseVarGenerator.generateVariable(CalciteBaseVarGenerator.java:61) at com.xsmartware.javatest.pbc2p.PBC2PTestRunner.test1(PBC2PTestRunner.java:68) at com.xsmartware.javatest.pbc2p.PBC2PTestRunner.run(PBC2PTestRunner.java:54) at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:758) at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:748) at org.springframework.boot.SpringApplication.run(SpringApplication.java:309) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1301) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1290) at com.xsmartware.javatest.JavaTestApplication.main(JavaTestApplication.java:9) Caused by: java.sql.SQLException: Error while executing SQL "select count(1) from p.PRH_PA01 ": class com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 cannot be cast to class org.apache.calcite.runtime.FlatLists$ComparableList (com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 and org.apache.calcite.runtime.FlatLists$ComparableList are in unnamed module of loader 'app') at org.apache.calcite.avatica.Helper.createException(Helper.java:56) at org.apache.calcite.avatica.Helper.createException(Helper.java:41) at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:163) at org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:227) at com.xsmartware.common.util.SQLUtil.exeGetLong(SQLUtil.java:42) at com.xsmartware.javatest.pbc2p.CalciteBaseVarGenerator.generateVariable(CalciteBaseVarGenerator.java:39) ... 8 more Caused by: java.lang.ClassCastException: class com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 cannot be cast to class org.apache.calcite.runtime.FlatLists$ComparableList (com.xsmartware.pbcm.sdk.pbc2p.PRH_PA01 and org.apache.calcite.runtime.FlatLists$ComparableList are in unnamed module of loader 'app') at Baz$1.apply(Unknown Source) at Baz$1.apply(Unknown Source) at org.apache.calcite.adapter.enumerable.BasicAggregateLambdaFactory$AccumulatorAdderSeq.apply(BasicAggregateLambdaFactory.java:81) at org.apache.calcite.linq4j.EnumerableDefaults.aggregate(EnumerableDefaults.java:133) at org.apache.calcite.linq4j.DefaultEnumerable.aggregate(DefaultEnumerable.java:107) at Baz.bind(Unknown Source) at org.apache.calcite.jdbc.CalcitePrepare$CalciteSignature.enumerable(CalcitePrepare.java:363) at org.apache.calcite.jdbc.CalciteConnectionImpl.enumerable(CalciteConnectionImpl.java:338) at org.apache.calcite.jdbc.CalciteMetaImpl._createIterable(CalciteMetaImpl.java:578) at org.apache.calcite.jdbc.CalciteMetaImpl.createIterable(CalciteMetaImpl.java:569) at org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:184) at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:64) at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:43) at org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:666) at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:638) at org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:674) at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:156) ... 11 more we use ReflectiveSchema with the following target class: public class PBC2PCalCiteSchema { public PRH_PA01[] PRH_PA01 = {}; public PRH_PA01CH[] PRH_PA01CH = {}; public PIM_PB01A[] PIM_PB01A= {}; public PIM_PB01B[] PIM_PB01B= {}; public PMM_PB02[] PMM_PB02= {}; public PRM_PB03[] PRM_PB03= {}; public POM_PB04[] POM_PB04= {}; public PSM[] PSM= {}; public PSM_FACTORS[] PSM_FACTORS= {}; public PCO_PC02[] PCO_PC02= {}; public PCO_PC02AH[] PCO_PC02AH= {}; public PCO_PC02BH[] PCO_PC02BH= {}; public PCO_PC02DH[] PCO_PC02DH= {}; public PCO_PC02KH[] PCO_PC02KH= {}; public PNO_PC03[] PNO_PC03= {}; public PNO_PC030H[] PNO_PC030H= {}; public PPO_PC04[] PPO_PC04= {}; public PPO_PC040H[] PPO_PC040H= {}; public PQO_PC05[] PQO_PC05= {}; public PDA_PD01[] PDA_PD01= {}; public PDA_PD01DH[] PDA_PD01DH= {}; public PDA_PD01EH[] PDA_PD01EH= {}; public PDA_PD01FH[] PDA_PD01FH= {}; public PDA_PD01GH[] PDA_PD01GH= {}; public PDA_PD01HH[] PDA_PD01HH= {}; public PDA_PD01ZH[] PDA_PD01ZH= {}; public PCA_PD02[] PCA_PD02= {}; public PCA_PD02CH[] PCA_PD02CH= {}; public PCA_PD02DH[] PCA_PD02DH= {}; public PCA_PD02ZH[] PCA_PD02ZH= {}; public PCR_PD03[] PCR_PD03= {}; public PCR_PD03ZH[] PCR_PD03ZH= {}; public PND_PE01[] PND_PE01= {}; public PND_PE01ZH[] PND_PE01ZH= {}; public POT_PF01[] POT_PF01= {}; public POT_PF01ZH[] POT_PF01ZH= {}; public PCJ_PF02[] PCJ_PF02= {}; public PCJ_PF02ZH[] PCJ_PF02ZH= {}; public PCE_PF03[] PCE_PF03= {}; public PCE_PF03ZH[] PCE_PF03ZH= {}; public PAP_PF04[] PAP_PF04= {}; public PAP_PF04ZH[] PAP_PF04ZH= {}; public PHF_PF05[] PHF_PF05= {}; public PHF_PF05ZH[] PHF_PF05ZH= {}; public PBS_PF06[] PBS_PF06= {}; public PBS_PF06ZH[] PBS_PF06ZH= {}; public PPQ_PF07[] PPQ_PF07= {}; public PPQ_PF07ZH[] PPQ_PF07ZH= {}; public PAH_PF08[] PAH_PF08= {}; public PAH_PF08ZH[] PAH_PF08ZH= {}; public POS_PG01[] POS_PG01= {}; public POS_PG010H[] POS_PG010H= {}; public POQ_PH01[] POQ_PH01= {}; }