如何a4j轮询不刷新Chrome中的图像



我有许多嵌套的<ui:repeat>标记,我必须定期更新内部数据。因此,我使用a4j:poll。但是要更新嵌套<ui:repeat>标签内的数据,我必须在第一个(根)<ui:repeat>标签之前刷新<div id="div1">标签。我的问题是,在嵌套的"标签有图像不改变,调用每个动作(<a4j:poll action="#{bean.update} render="div1"/>)后,这些图片被重新加载。在IE和Firefox中没有问题,图片和div正在缓存,只有数据更改。在Chrome所有div和图像嵌套在<div id="div1">被重新加载。我可以告诉a4j:poll不重载图像宽度显式id或使Chrome缓存它们与JavaScript或其他东西?例如:

<h:body>
    <h:panelGroup layout="block" id="div1">  
        <ui:repeat value="#{bean.someListData}" var="data">
            <ui:repeat value="..." var="...">
                ... 
                <img id="mustNotBeReloaded"/>
                <h:outputText id="mustBeReloaded"/>
                ...               
            </ui:repeat>
        </ui:repeat>
    </h:panelGroup>
    <h:form>
        <a4j:poll action="#{bean.update}" render="div1"/>
    </h:form>
</h:body>

我通过设置图像请求的响应头来修复这个问题:

response.setHeader("Cache-Control", "max-age=" + 100000);

最新更新