如何在 h:dataTable 中嵌套的 ui:repeat 中获取 h:outputText 以在更新数据表时进行更新?

How do I get h:outputText inside of a ui:repeat nested in h:dataTable to update when the datatable is updated?

所以我的代码的相关部分是:

<h:panelGroup id="pnlGrp" style="padding:10px" width="100%">
    <div>
        <h:dataTable id="availableCrList"
                       value="#{searchData.availableCrList}"
                       var="avail"
                       varStatus="thisVarStatus" rows="#{searchData.rowsPerPage}"
                       sortColumn="#{searchData.crSortColumnName}"
                       sortAscending="#{searchData.crAscending}" style="width:100%;">
            <h:column>
                <ui:repeat value="#{avail.crRsnCdList}"
                            var="crRsnCd"
                            varStatus="status">
                    <h:outputText value="#{crRsnCd}&lt;br /&gt;"
                                    title="#{avail.crRsnDescList[status.index]}"
                                    escape="false"/>
                </ui:repeat>
            </h:column>
        </h:dataTable>
    </div>
</h:panelGroup>

我在遗留应用程序中工作,我的目标是显示一个代码列表,这些代码指示此 table 中给定项目可能完成或取消等原因的原因。标题将转换为悬停工具提示,显示每个代码的说明。

现在,我设法使它对单数代码起作用没问题,但自从从字符串切换到字符串列表后,试图让它起作用一直是一场噩梦。

现在使用上面的代码,它第一次正确显示代码,但是当我通过搜索新值更新数据table时,所有其他列(未显示)都正确显示,而RsnCd 列继续显示与第一次搜索相同的数据。

例如,我第一次搜索记录时,数据table 可能会出现:

Row1:A1
Row2:A1
Row3:A1
     A3
Row4:A1

我第二次搜索我希望看到的数据:

Row1:
Row2:
Row3:
Row4:
Row5:
Row6:
Row7:

但我得到的是:

Row1:A1
Row2:A1
Row3:A1
     A3
Row4:A1
Row5:
Row6:
Row7:

真的不确定我是否在解释这个 adequately/understandably。

我通过更改解决了这个问题

<ui:repeat value="#{avail.crRsnCdList}"
           var="crRsnCd"
           varStatus="status">
    <h:outputText value="#{crRsnCd}&lt;br /&gt;"
                  title="#{avail.crRsnDescList[status.index]}"
                  escape="false"/>
</ui:repeat>

收件人:

<ice:column>
    <ice:repeat value="#{avail.crRsnCdList}"
                varStatus="status">
        <ice:outputText value="#{avail.crRsnCdList[status.index]}&lt;br /&gt;"
                        title="#{avail.crRsnDescList[status.index]}"
                        escape="false"/>
    </ice:repeat>
</ice:column>

我尝试删除该值,但它停止显示任何内容。