你定义的两个数组
String[][] str;
String[][] str2;
在赋值的时候第一维的长度没有达到7,所以引用的时候数组越界 for(int j = 0;j<7;j++){

解决方案 »

  1.   

    明显的数组越界
    str2 = db.getResultArray(sql2,fieldName2);
    for(int j = 0;j<7;j++){
        String ID1 = str2[j][0];
    }
    你怎么保证str2[6][0]或str2[0][0],有意义呢;
      

  2.   

    出错信息的提示已经很明显了,错误类型和行号都指出来了
    java.lang.ArrayIndexOutOfBoundsException at hunan.inc._0002fhunan_0002finc_0002fright_0002ejspright_jsp_12._jspService(_0002fhunan_0002finc_0002fright_0002ejspright_jsp_12.java:139)
      

  3.   

    数组越界,len跟len2制作了一个简单的判断,为什么就没有用过呢?
    难道检索出来的数据是固定的?
    if(len>0){
        for(int i = 0;i<7;i++){if(len2>0){
        for(int j = 0;j<7;j++){
    这两个地方的写法值得斟酌。