我有一个可分页和可排序的<p:dataTable>
:
<p:dataTable var="item" value="#{reporteIngresosPorExtranetController.detalle}"
paginator="true" rows="10" paginatorPosition="bottom" rowsPerPageTemplate="5,10,15"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">
<p:column sortBy="#{item.user}" headerText="USUARIO:">
<h:outputText value="#{item.user}" />
</p:column>
...
</p:dataTable>
它的数据是在事件期间从 flash 作用域中获取到一个@ViewScoped
bean 中的preRenderView
:
<f:event type="preRenderView" listener="#{reporteIngresosPorExtranetController.cargarDatos}" />
public void cargarDatos() {
detalle = (List<Map<String, Object>>) FacesUtils.flashScope().get("RIE_detalle");
}
当我执行分页或排序时,数据会丢失。这是如何引起的,我该如何解决?