JSF 2 Primefaces datatable rowkey - PullRequest
       36

JSF 2 Primefaces datatable rowkey

0 голосов
/ 14 января 2012

Я использую JSF 2.0 с Primefaces M3 и столкнулся с проблемой с атрибутом rowkey.Когда я пытаюсь сделать функцию удаления поверх таблицы данных, сценарий выдает исключение после второго удаления:

javax.faces.FacesException: Cannot find data with given rowKey:4
    at org.primefaces.component.datatable.DataTable.getRowData(DataTable.java:878)
    at org.primefaces.component.datatable.DataHelper.decodeMultipleSelection(DataHelper.java:247)
    at org.primefaces.component.datatable.DataHelper.decodeSelection(DataHelper.java:225)
    at org.primefaces.component.datatable.DataTableRenderer.decode(DataTableRenderer.java:61)
    at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:791)
    at javax.faces.component.UIData.processDecodes(UIData.java:981)
    at org.primefaces.component.datatable.DataTable.processDecodes(DataTable.java:575)
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1043)
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1043)
    at org.primefaces.component.layout.Layout.processDecodes(Layout.java:229)
    at javax.faces.component.UIForm.processDecodes(UIForm.java:212)
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1043)
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1043)
    at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:920)
    at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:74)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
    at java.lang.Thread.run(Unknown Source)

*

Ответы [ 2 ]

0 голосов
/ 18 января 2012

Попробуйте указать полный идентификатор в команде обновления для ex-update = "mainForm: mainTab: dataTableid"

0 голосов
/ 15 января 2012

Попробуйте обновить данные через ajax после нажатия кнопки удаления.

...