在我的项目中,我有两个数据表flussiGuest和guestSummary链接:提供前者选择的ArrayList提供后者的值;我需要从辅助bean向guestSummary添加元素; 我在其他帖子中读到,这样做就足以将项目添加到列表中,该列表提供了数据表的选择,但在我的情况下它不起作用这是flussiGuest:
<p:dataTable var="rowItem" widgetVar="flussiGuest"
value="#{fileMatchMB.refactoredGuestList}"
selectionMode="multiple"
selection="#{fileMatchMB.refactoredSelectedGuests}"
rowKey="#{rowItem.pk_num}" scrollable="true" scrollHeight="100%"
id="tableFlussiGuest" rowClasses="list_odd_row,list_even_row"
styleClass="fluxTable" headerClass="fluxTableHeader">
<p:ajax event="rowUnselect"
onsuccess="document.forms['frm_match'].submit()"
listener="#{fileMatchMB.onRowUnSelectGuest}" />
<p:ajax event="rowSelect"
onsuccess="document.forms['frm_match'].submit()"
listener="#{fileMatchMB.onRowSelectGuest}" />
<f:facet name="footer">
"#{fileMatchMB.countGuest} / #{fileMatchMB.refactoredGuestList.size()} #{msg.msg_records}"
</f:facet>
<p:column headerText="column1"
style="text-align: center; width:30px;">
</p:column>
<p:column headerText="column2"
style="text-align: center; width:30px;">
</p:column>
<p:column headerText="column3" styleClass="scrollableCell"
style="text-align: center; width:80px;">
</p:column>
<p:column headerText="column4" styleClass="scrollableCell"
style="text-align: center; width:30px;">
</p:column>
<p:column tyleClass="scrollableCell"
style="text-align: center; width:10px;">
</p:column>
</p:dataTable>
这是summaryGuest:
<p:dataTable var="rowItem" scrollable="true" scrollHeight="100%"
id="GuestSummary"
emptyMessage="nessun flusso guest selezionato"
value="#{fileMatchMB.refactoredSelectedGuests}"
rowKey="#{rowItem.pk_num}">
style="width:10px;text-align:center" />
<p:column headerText="Date Valuta" width="30">
<h:outputText value="#{rowItem.val_date}">
<f:converter
converterId="filematch.interfaccia.CalendarConverter" />
</h:outputText>
</p:column>
<p:column headerText="column1"
style="text-align: center; width:30px;">
</p:column>
<p:column headerText="column2" styleClass="scrollableCell"
style="text-align: center; width:80px;">
</p:column>
<p:column headerText="column3" styleClass="scrollableCell"
style="text-align: center; width:30px;">
<p:column headerText="column4" styleClass="scrollableCell"
style="text-align: center; width:10px;">
</p:column>
<f:facet name="footer">
"#{fileMatchMB.refactoredSelectedGuests.size()} / #{fileMatchMB.refactoredGuestList.size()} #{msg.msg_records}"
</f:facet>
</p:dataTable>
我认为我遗漏了一些与JSF生命周期有关的东西,因为我可以看到refactoredSelectedGuests暂时是正确的,但在渲染视图之前,它被重置为一个空的ArrayList。