Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 使用Omnifaces使数据过期<;o:缓存>;_Jsf 2_Omnifaces - Fatal编程技术网

Jsf 2 使用Omnifaces使数据过期<;o:缓存>;

Jsf 2 使用Omnifaces使数据过期<;o:缓存>;,jsf-2,omnifaces,Jsf 2,Omnifaces,我有一个很大的缓冲区,用于存储应用程序范围内的内容。使用Omnifaces让我们很容易做到这一点 但是,如果我需要使缓存过期,那么似乎没有方法可以这样做。如果需要的话,我可以设置时间属性,但这似乎不是这个谜题的理想答案 有没有关于强制更新基础数据的建议 谢谢 特马尔 但是,如果我需要使缓存过期,那么似乎没有方法可以这样做 在标记/组件上确实没有方法,但有一种编程方式。如果将显式密钥分配给缓存项,则此操作效果最佳: <o:cache key="myCache"> cached

我有一个很大的缓冲区,用于存储应用程序范围内的内容。使用Omnifaces让我们很容易做到这一点

但是,如果我需要使缓存过期,那么似乎没有方法可以这样做。如果需要的话,我可以设置时间属性,但这似乎不是这个谜题的理想答案

有没有关于强制更新基础数据的建议

谢谢

特马尔

但是,如果我需要使缓存过期,那么似乎没有方法可以这样做

在标记/组件上确实没有方法,但有一种编程方式。如果将显式密钥分配给缓存项,则此操作效果最佳:

<o:cache key="myCache">

   cached content here

</o:cache>
注意,默认范围是“session”,所以这里使用它。如果您为标记使用了另一个作用域(如“application”),您将在支持bean代码中指定它

只要知道缓存需要过期,就可以调用此方法(例如,如果某个操作方法更新了某些备份数据),或者可以显式执行重置按钮:

<h:form>
    <h:commandButton action="#{someBean.reset}" value="Reset cache" />
</h:form>


对于OmniFaces 1.5,我们计划在
o:cache
标记中添加一个属性,使其更简单,我们将在showcase中添加一个示例,演示如何手动终止条目。

谢谢,Arjan!这是一个理想的解决方案。
<h:form>
    <h:commandButton action="#{someBean.reset}" value="Reset cache" />
</h:form>