我开始使用JSF 2,所以想尝试使用h:outputStylesheet。它很好用,但是我试图应用添加查询字符串到请求的“模式”或技巧,该查询字符串会随着文件版本更改而变化,以强制浏览器获取更改内容。
类似于这里使用的方法。
不幸的是,我无法实现它。实际上,使用该标签时,它并不生成简单的URL,而是生成一个已经有查询字符串的计算URL。我在规范和这里找到了一些关于JSF 2资源版本控制的信息,但它似乎涉及到多个版本的资源,而不是我需要的。
当然,我可以回到旧的使用方式。但我想在这里分享并讨论这个问题。
更新1- 一些示例:
我尝试的是像这样的代码:
<h:outputStylesheet library="css" name="estilo.css?v=1" target="head"/>
它的渲染效果为:
<link type="text/css" rel="stylesheet" href="RES_NOT_FOUND" />
相当具有描述性。;-)
我试图得到的是这样的内容:
<link rel="stylesheet" type="text/css" href="../css/estilo.css?v=1"/>
以前我会用 JSP 来实现这个功能,代码如下:
<link rel="stylesheet" type="text/css"
href="<c:url value='/css/estilo.css?v=${initParam.version}'/>"/>