ユーザーがExcelファイルをアップロードし、アプリケーションがDataTableの形式で表示するアプリケーションを作成しています。これまでのところ、ここに記載されているコードを使用して次のコードを記述しました
<h3>Dynamic Data table example</h3>
<p:dataTable var="data" value="#{tableBean.people}">
<p:columns value="#{tableBean.columns}" var="column"
columnIndexVar="colIndex">
<f:facet name="header">
#{column.header}
</f:facet>
#{data[column.property]}
</p:columns>
</p:dataTable>
</h:form>
マネージド Bean コード
private void addPeople() {
people = new ArrayList<People>();
People w1 = new People("Homer Simpson","The father",48);
People w2 = new People("Marge Simpson","The mother",46);
People w3 = new People("Bart Simpson","Oldest child",11);
People w4 = new People("Lisa Simpson","Sister of Bart",8);
people.add(w1);
people.add(w2);
people.add(w3);
people.add(w4);
}
private void createDynamicColumns() {
columns = new ArrayList<ColumnModel>();
columns.add(new ColumnModel("Name", "name"));
columns.add(new ColumnModel("Role", "role"));
columns.add(new ColumnModel("Age", "age"));
}
ゲッターメソッドも含まれています。
このコードは正常に動作していますが、この例では行のパターン、つまり (名前、役割、年齢) を設定しています。しかし、Excel ファイルに列がいくつあるかわからないため、行データのパターンを定義できません事前に。
この問題にアプローチする方法はありますか?