下面是将List 转换为二维数组方法:
在jsp页面能取出这个数组并且是正确的,可是就是不能用struts <logic:iterate>List出来,为什么呀???????????????  public String[][] getRecords(String jdbcname)
  {
      List rlist=getArrList(jdbcname);
      String[][] rcds=null;
      //Convert List to Array.   
      if (!rlist.isEmpty())
        { 
       int rows=rlist.size();
int cols=((Map)rlist.iterator().next()).size();
rcds=new String[rows][cols];
for (int i=0;i<rows;i++)
{
Map Rrows=(Map)rlist.get(i);
for (int j=0;j<cols;j++)
{
rcds[i][j]=(String)Rrows.get(fields[j]);
}

}
try{  }
   catch(Exception e){System.out.println(e.toString());}   
          
      return rcds;
  }

解决方案 »

  1.   

    我在JavaWebStudio中编译和运行都通过,可正常输出:
    Action中写:
     String  Arr[][]=new String[2][2];
             Arr[0][0]="1";
             Arr[0][1]="A";
             Arr[1][0]="2";
             Arr[1][1]="B";
             session.setAttribute("Conts",Arr);
    JSP内容一点都不用改就可行:
    <table width="90%" border=1 cellspacing=0 cellspadding=0 align=center>
    <logic:iterate id="conts" name="Conts" indexId="index">
    <tr>
      <logic:iterate id="cont" name="conts" indexId="in" offset="0">
        <td><bean:write name="cont"/></td>
      </logic:iterate>
    </tr>
    </logic:iterate>
    </table>运行后输出:
    1 A 
    2 B