【发布时间】:2015-06-26 08:54:53
【问题描述】:
我有几个我不想合并的 CSS 文件,但我也想破坏这些资源的缓存,所以我声明它们:
<h:outputStylesheet name="css/styles.css?version=#{startup.time}" />
在我添加 CombineResourceHandler 之前它运行良好。现在新的处理程序无法识别资源的名称,我不能使用通配符来排除这些资源,例如:
<context-param>
<param-name>org.omnifaces.COMBINED_RESOURCE_HANDLER_EXCLUDED_RESOURCES</param-name>
<param-value>css/styles.css*</param-value>
</context-param>
如果我删除版本参数,我必须对这些文件进行版本控制,这是我想避免的。
关于如何以最简单的方式实现这一点的任何想法?
【问题讨论】:
-
CombinedResourceHandler具有内置缓存清除功能。所以你可以从你的资源名称中删除它们。让我知道这是否足够。 -
不,这还不够,我会尝试看看这堂课,看看发生了什么
-
这是一个被排除的资源(我需要排除它),所以我想这是它没有破坏它的原因。
-
好的,我明白了。好吧,我只是简单地看了一下,但 Mojarra 不喜欢输出样式表资源名称中的查询字符串,只是返回了 RES_NOT_FOUND。也许您正在使用 MyFaces?无论如何,在每个 JSF 问题中始终提及您正在使用哪个 JSF impl/version。
-
是的,我正在使用 myfaces。对不起,我的错。
标签: jsf jsf-2.2 myfaces omnifaces combinedresourcehandler