ArrayListのArrayListがあります-次のように宣言します:
ArrayList<ArrayList<String>> queryResult=new ArrayList<ArrayList<String>>();
次に、次のように配列に新しい要素を追加します。
for(int i=1;i<colNumber;i++)
{
queryResult.add(new ArrayList<String>(20));
}
その後、配列の要素に値を追加します。
while(r.next())
{
for(int i=0;i<colNumber;i++)
{
queryResult.get(i).add(r.getString(i));
}
}
しかし、DataTableタグで使用しようとすると、何も表示されません:(
<h:dataTable value="#{polaczenieSQL.queryResult}" var="w">
<h:column>
<f:facet name="head">typ</f:facet>
#{w[0]}
</h:column>
私が間違っていることは何ですか?JSFでこの配列をどのように使用する必要がありますか?
PSこれは私のfaces.configです:
<managed-property>
<property-name>queryResult</property-name>
<property-class>java.util.ArrayList</property-class>
<list-entries></list-entries>
</managed-property>
私は最初の問題を見つけました:
r.getString(i)
追加しました
System.out.print("something")
ループの後ですが、印刷したくありません。
変数「i」を変更して、たとえば次のように入力すると、コンソールに「何か」が表示されます。変数'colNumber'は5に設定されています(ただし、SQLテーブルには7つの列があり、 "select * from mytable"を使用しているため、これがカウンターの問題だとは思いません)。