Richfaces 4.4 ExtendedDataTable垃圾邮件向下滚动后的Ajax请求

时间:2013-12-06 14:15:02

标签: ajax jsf jsf-2 richfaces

问题是当我使用全局状态的ajax请求和ExtendedDataTable一起发生奇怪的错误 - 当我向下滚动时(我在表中加载了大量数据)ajax请求在控制台中保持spaming和ajax状态(图片加载)继续闪烁。 有我的代码:

    

<h:head></h:head>
<h:body>
    <h:outputText value="TEsts with Extended Table" />
    <h:form id="form">
        <a4j:status id="waithStatus"
            onstart="#{rich:component('waithStatusPanel')}.show();"
            onstop="#{rich:component('waithStatusPanel')}.hide();">
            <f:facet name="start">
                <rich:popupPanel id="waithStatusPanel" autosized="true">
                    <h:graphicImage library="images" name="waith.gif" />
                </rich:popupPanel>
            </f:facet>
        </a4j:status>

        <h:panelGrid columns="2">
            <rich:extendedDataTable value="#{testKrasi.tableList}" var="row" id="table" 
             selectionMode="none" clientRows="10" style="height:250px;width:400px"
             iterationStatusVar="it">
             <rich:column>
                <f:facet name="header">#</f:facet>
                  #{it.index}
             </rich:column>
             <rich:column filter="#{testKrasi.vendorFilter}" filterType="custom">
                <f:facet name="header">
                    vendor
                </f:facet>
                <h:outputText value="#{row[1]}"/>
            </rich:column>
            <rich:column filter="#{testKrasi.modelFilter}" filterType="custom">
                <f:facet name="header">
                    model
                </f:facet>
                <h:outputText value="#{row[2]}"/>
            </rich:column>          
                   </rich:extendedDataTable>
        </h:panelGrid>
    </h:form>
</h:body>
</html>

并且有firebug控制台的屏幕截图 every second a ajax request fires

AJAX响应是

<partial-response>
<changes>
<update id="javax.faces.ViewState">-2313795786913874202:5967295793801101249</update>
</changes>
</partial-response>

我不知道该怎么做...我试着在一周内修复这个问题...... 请帮我。

1 个答案:

答案 0 :(得分:0)

当您使用表的ajax延迟数据加载时,这些数据加载请求会导致状态显示。

如果您不需要,则需要禁用ajax数据加载(请参阅RichFaces Showcase以了解具体方法)。 或者禁用状态以在表更新上显示。您可以将表格包装到a4j:region中以执行此操作。