我正在嘗試在另一個可編輯數據表中編制一個嵌套的(通過行擴展)數據表。它似乎有問題的ajax rowEdit事件。當我只有一個數據表可編輯時,例如註釋掉它工作的嵌套ajax標籤。但是,當我嘗試同時使用它返回一個錯誤說:找不到試圖編輯嵌套在可編輯數據表裏面的數據表(我認爲是Ajax錯誤)
方法:[email protected]7.editInvoiceItem(javax.faces.event.AjaxBehaviorEvent)」
這是?因爲雙AJAX事件
如何糾正這種同時保持兩個表編輯
HTMLX:
<h:form id="mainForm" >
<p:dataTable id="mainFormTable" editable="true" value="#{completeInvoiceController.labNumberBill}" var="lab" paginator="true" rows="10" rowStyleClass="#{lab.colorStatus}">
<p:ajax event="rowEdit" listener="#{completeInvoiceController.editBill}" />
<p:column>
<p:rowToggler/>
</p:column>
...
...
<p:column headerText="Date" footerText="Date">
<p:cellEditor>
<f:facet name="output">
<p:outputLabel value="#{lab.creationDateString}" />
</f:facet>
<f:facet name="input">
<p:calendar value="#{lab.creationDate}" />
</f:facet>
</p:cellEditor>
</p:column>
...
...
<p:column headerText="Edit">
<p:rowEditor />
</p:column>
<p:rowExpansion>
<p:dataTable value="#{lab.invoiceItems}" var="item" editable="true">
<p:ajax event="rowEdit" listener="#{completeInvoiceController.editInvoiceItem}" />
...
...
<p:column headerText="Description" footerText="Description">
<p:cellEditor>
<f:facet name="output">
<p:outputLabel value="#{item.description}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{item.description}" />
</f:facet>
</p:cellEditor>
</p:column>
...
...
<p:column headerText="Edit">
<p:rowEditor />
</p:column>
</p:dataTable>
</p:rowExpansion>
豆類
public void editInvoiceItem(RowEditEvent event){
InvoiceItemConstructor itc = (InvoiceItemConstructor) event.getObject();
if(cih == null){
cih = new CompleteInvoiceHelper();
}
cih.updateItem(itc);
}
public void editBill(RowEditEvent event){
CompleteInvoiceLabNumberBill bill = (CompleteInvoiceLabNumberBill) event.getObject();
if(cih == null){
cih = new CompleteInvoiceHelper();
}
cih.updateBill(bill);
}
嘗試PrimeFaces 7,PrimeFaces在一個線程的詳細信息0.2不支持了 – Kukeltje
我會更新primefaces,但我之前的開發做了調整,以舊primefaces源代碼允許的東西,但我不知道是什麼。所以我害怕我堅持這個版本,直到我有信心找出它是什麼。 – user2446136
好的,你沒有得到提示....指定你使用的版本,並嘗試更新的版本,只是爲了看看它是否仍然失敗。並創建一個mcve,如果有人想重現,他們的代碼和你完全一樣。請同時閱讀[ask] – Kukeltje