在哪里放置favicon来考虑JSF资源版本控制?

Jen*_*ens 5 favicon jsf-2

在我的JSF webApp中,我将所有资源(js, css, img)放入一个版本化的库中,正如BalusC在这个答案中指出的那样.

现在我favicon也住在这里:

resources --> default --> 1_1 --> img --> favicon.ico
Run Code Online (Sandbox Code Playgroud)

根据这个答案,添加favicon的方式是:

<link rel="shortcut icon" 
    type="image/x-icon" href="#{request.contextPath}/resources/default/1_1/img/favicon.ico"/>
Run Code Online (Sandbox Code Playgroud)

但是这样会忽略从最高版本文件夹(例如1_1)自动选择文件的资源处理,我每次都必须手动更改.

那么还有另一种方法来包含favicon,还是将favicon放在别处(在版本库之外)?

Bal*_*usC 6

使用隐式EL #{resource}处理程序让JSF将资源标识符转换为正确的URL.

<link ... href="#{resource['default:img/favicon.ico']}" />
Run Code Online (Sandbox Code Playgroud)

请注意,这也是您应该用来引用CSS文件中的背景图像的方式.