CombinedResourceHandler排除的资源无法识别带有查询字符串的资源

时间:2015-06-26 08:54:53

标签: jsf jsf-2.2 myfaces omnifaces combinedresourcehandler

我有几个我不想合并的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>

如果删除版本参数,我必须对这些文件进行版本控制,这是我想避免的。

关于如何以最简单的方式实现这一点的任何想法?

1 个答案:

答案 0 :(得分:2)

OmniFaces通过内部ResourceIdentifier类识别资源。它没有考虑任何查询字符串,路径参数和路径片段。根据{{​​3}},这已得到修复。该解决方案可在今天的this commit中找到。

支持排除(和抑制)资源上下文参数中的通配符模式将是2.2-SNAPSHOT的良好候选者。

相关问题