2010-04-07 66 views
0

我有这样的代码:不能编辑我的H:数据表

<h:form> 
     <rich:dataTable value="#{my.lreqs}" var="req" 
      id="reqs" width="630px" > 
       <rich:column label="Value" styleClass="schColL" width="90px" 
       style="text-align:center"> 
       <f:facet name="header"> 
        <h:outputText value="#{my.colValue}" /> 
       </f:facet> 
       <h:inputText value="#{req.value}" > 
       </h:inputText> 
      </rich:column> 
     </rich:dataTable> 
     <h:commandButton value="Save" 
      action="#{my.saveChanges}" ></h:commandButton> 
    </h:form> 

,这是我的bean:

private List<Detail> lreqs; 


public void setLreqs(List<Detail> lreqs) { 
     this.lreqs = lreqs; 
} 

public void saveChanges() { 

     firstNewValue = lreqs.get(0).getValue(); 
     } 

/** 
    * @return the lreqs 
    */ 
    public List<Detail> getLreqs() { 
     if (currentJob != null && lreqs==null) { 
      lreqs = (List<Detail>) jobsBDataDAO.findByJobBooking(currentJob); 
     } 
     return lreqs; 
    } 

但是当我点击保存 - 在req.value领域的新价值没有被保存! 为什么呢?

+0

请修改您的问题以包含'saveChanges()'方法,该方法显示您如何断定新值未保存。 – BalusC 2010-04-07 11:46:05

+0

你有具体的class中的setValue()方法吗? – Inv3r53 2010-04-08 10:11:12

+0

是的,我有setValue() – Dejell 2010-04-08 12:23:12

回答

0

我添加了一个错误。

a4j:richfaces的keepAlive标记在f:view .. 之前,并且未正确读取。