1

メソッドからクラス型リストに要素を追加するコードがあります。しかし、Imがap:dataTableを生成しようとすると、リストの対応するgetメソッドは、すでに追加した以前の値を見つけることができません。私のコードは以下の通りです-

List<LastToleranceExceed> excptn = new ArrayList<LastToleranceExceed>();

public void ret_approve(FlPendingList fl)throws SQLException{

  String q = "----My Query----";
  PreparedStatement pq=cn.prepareStatement(q);
  ResultSet rsq=pq.executeQuery();

  while(rsq.next()){
    excptn.add(new LastToleranceExceed(unit_name,energy_name,
                                       consump_id,date_list,
                                       shift_list,
                                       Edit_Quantity,
                                       Quantity,
                                       uom_list,
                                       violation));
  }

public List<LastToleranceExceed> getExcptn() throws SQLException{
  return excptn;
}

Xhtmlの場合:

<p:dataTable value="#{flApproval.excptn}" 
             var="vio" 
             id="dt2" 
             rendered="#{flApproval.dt_show}">

  <p:column>
    <f:facet name="header">
      Date
    </f:facet>
    #{vio.activitydate}
  </p:column>

</p:dataTable>

このコードの問題は何ですか?追加した値を取得するにはどうすればよいですか?Plzヘルプ

4

1 に答える 1

2

メソッドがret_approve呼び出されるのは、おそらくデータ テーブルが初期化された後です。@PostConstructにアノテーションを適用してみることができますret_approve

于 2012-11-22T06:10:19.420 に答える