开发者

How can I implement CSS Cache Busting with JSF outputStylesheet?

开发者 https://www.devze.com 2023-03-12 05:11 出处:网络
In JSF page templates I use this code to include a CSS resource: <h:outputStylesheet library=\"css\" name=\"m开发者_StackOverflow社区ystyles.css\"/>

In JSF page templates I use this code to include a CSS resource:

<h:outputStylesheet library="css" name="m开发者_StackOverflow社区ystyles.css"  />

The usual way to implement CSS cache busting would be to add a version parameter, like v=123, however this is not supported in outputStyleSheet:

<h:outputStylesheet library="css" name="mystyles.css?v=123"  />

will cause a JSF1064 warning and the CSS will not be found.


That's not possible without overridding the StylesheetRenderer (assuming you're on Mojarra). It does indeed not take the query string into account. However, as a (temporary) workaround it's good to know that it is valid to include the CSS using CSS' own @import rule inside <h:outputStyleSheet>.

<h:outputStylesheet target="head">
    @import url('css/mystyles.css?v=123')
</h:outputStylesheet>

You might want to post an enhancement request to the Mojarra boys to take this into account in future releases.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号