2012-11-22 100 views
1

我有一个代码,可以将元素添加到方法的类类型列表中。但是,无论何时我试图生成一个p:dataTable列表的相应get方法都找不到以前的值,我已经添加了。我的代码如下─p:数据表初始化

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帮助

+0

如何更新表格?它在内吗? – bjedrzejewski

+0

@ jedrus07:是的,它在一个中,并且通过commandButton更新它作为update =“:df2:dt2” – Basuz

+0

你可以发布你的按钮和bean的代码吗?这可能是一个问题,这个bean的范围不在@ViewScoped或者超出请求的任何东西。 – bjedrzejewski

回答

2

当调用ret_approve方法时,可能是在数据表初始化之后。 您可以尝试在ret_approve上应用@PostConstruct注释。