Jsf p:选择复选框菜单非常慢

Jsf p:选择复选框菜单非常慢,jsf,primefaces,Jsf,Primefaces,我对JSF完全陌生,我无法理解一个简单的selectCheckboxMenu元素在我点击它时会花费很多时间来显示15000多个元素: 代码: VariableFilters是一个简单的类(不继承任何内容),它包含填充客户端站点页面所需的所有字段 reportsBean-是具有ViewScope的ManagedBean 有什么方法可以提高性能吗?您真的想显示一个包含15000个元素的列表吗?很遗憾,是的,我必须显示所有这些ID。首先,它是一个PrimeFaces组件,而不是JSF,因此您的标记

我对JSF完全陌生,我无法理解一个简单的selectCheckboxMenu元素在我点击它时会花费很多时间来显示15000多个元素:

代码:


VariableFilters是一个简单的类(不继承任何内容),它包含填充客户端站点页面所需的所有字段

reportsBean-是具有ViewScope的ManagedBean


有什么方法可以提高性能吗?

您真的想显示一个包含15000个元素的列表吗?很遗憾,是的,我必须显示所有这些ID。首先,它是一个PrimeFaces组件,而不是JSF,因此您的标记和标题是错误的。其次,显示所有15000是错误的要求,为此使用多选自动完成。如果您确实需要15000,请尝试其他浏览器或使用
h:selectCheckboxMenu
(如果有),但您将失去过滤功能。
        <p:column style="width:30%;">
            <p:selectCheckboxMenu id="lossesReportReportTripIdSelectId"
                filter="true" filterMatchMode="contains" style="width:100%;"
                value="#{reportsBean.filters.selectedTripIds}"
                label="#{message['labels.tripId']}" onHide="tripIdSelectRC()" converter="javax.faces.Long">
                <f:selectItems id="lossesReportReportTripIdSelectItemsId"
                    value="#{reportsBean.filters.tripIds}" var="tripId"
                    itemLabel="#{tripId}" itemValue="#{tripId}" />
                <p:remoteCommand name="tripIdSelectRC" partialSubmit="true" />
            </p:selectCheckboxMenu>
        </p:column>