色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

JSF 2瀏覽器沒有緩存資源

榮姿康1年前9瀏覽0評論

我有一個JSF組件,它通過ajax請求由一個按鈕刷新。該組件有一個圖像,該圖像為了一個值而改變。如果我查看網絡請求,我可以看到我的瀏覽器沒有緩存圖像,而是在每次點擊時都請求它們。這會導致視圖渲染中出現某種“彈出”現象。

我想通過緩存圖像來加快刷新時間和渲染時間。我已經嘗試在GET方法上使用RequestFilter,它將Cache-Control頭設置為“public ”,但是不起作用。

知道嗎?

延遲指示器

<!-- IMPLEMENTATION -->
<composite:implementation>
    <h:panelGrid columns="2">
        <c:choose>
            <c:when test="#{cc.attrs.latencia ge cc.attrs.umbralAlto}">
                <p:graphicImage value="#{resource['images:rojo.png']}"/>
            </c:when>
            <c:when test="#{(cc.attrs.latencia lt cc.attrs.umbralAlto) and (cc.attrs.latencia ge cc.attrs.umbralMedio)}">
                <p:graphicImage value="#{resource['images:ambar.png']}"/>
            </c:when>
            <c:otherwise>
                <p:graphicImage value="#{resource['images:verde.png']}"/>
            </c:otherwise>
        </c:choose>
        <h:outputText value="#{cc.attrs.latencia} ms."/>
    </h:panelGrid>
</composite:implementation>

示例. xhtml

<h:body>
    <h:form id="miForm">
        <h:commandButton id="boton" value="Generar Latencia">
            <f:ajax render="@form" event="click" listener="#{latencyBean.actualizarLatencia()}"/>
        </h:commandButton>
        <miscomponentes:LatencyIndicator latencia="#{latencyBean.latencia}"/>
    </h:form>
</h:body>

這可能有多種原因:

您是否通過web.xml中的上下文參數javax.faces.PROJECT_STAGE將項目階段設置為開發?因為在這種情況下,JSF禁用緩存。將參數設置為Production(默認值)應該會啟用緩存。 你使用低于2.1.21的Mojarra版本嗎?舊版本中有一個阻止緩存的錯誤。在這種情況下,您可以嘗試新版本。