p:对哈希集变量的重复迭代行为异常

时间:2019-02-22 14:43:41

标签: jsf primefaces

我的视图中有Set responseDocumentsVar,它包含三个值。例如,PASPGP_CND,COVER_LTR,PERMIT_LTR。我在xhtml中使用了此变量,并使用primesfaces组件p:repeat进行了迭代,如下所示。但是,意外的行为是当我尝试访问“ PASPGP_CND”字母时,下载了COVER_LTR,而当我尝试访问PERMIT_LTR时,则下载了PASPGP_CND。不知道为什么,我访问的内容没有下载。谁能解释这种行为?

<p:repeat   value="#{sessionView.appCycleEntity.reviewResponseEntity.reviewResponseDocuments.toArray()}"
     var="revResDocument"
        width="100%" styleClass="hideDataTableColumnsHistory">
        <div class="cardWrapper ui-g-12 ui-md-6 ui-lg-6">
            <div class="cardDisplay fileCard">
                <div class="cardTypeId">
                    <div class="icon"></div>
                </div>
                <div class="cardInfo">
                    <!-- card meta data -->
                    <dl class="cardMetaData clearfix">
                        <dt>
                        <p:commandLink id="filename${fileTypeCounter}_${fileCounter}"
                                value="#{sessionView.getLetterNameForSummaryScreen(revResDocument.letterTypeCode).length() gt 30 ? sessionView.getLetterNameForSummaryScreen(revResDocument.letterTypeCode).substring(0,30).concat('...') : sessionView.getLetterNameForSummaryScreen(revResDocument.letterTypeCode)}"
                                actionListener="#{recordDecisionController.retrieveLetter(revResDocument)}"
                                ajax="false" process="@this" onstart="PF('statusDialog').show()"
                                        oncomplete="PF('statusDialog').hide();" immediate="true"/>


                        </dt>
                     </dl>

                </div>
            </div>
        </div>
</p:repeat>

image shows how it is displayed to the user

在上图中,当我尝试访问1时,下载了3,当我尝试访问3,则下载了2,即未下载所需的文件。我在Java端进行了调试,传递给后端的附件ID也不正确。

很抱歉,如果我不清楚该问题的解释。

0 个答案:

没有答案