如何输出favicon<;链接>;在HTML标题部分使用JSF2.0?

如何输出favicon<;链接>;在HTML标题部分使用JSF2.0?,jsf,resources,jsf-2,favicon,Jsf,Resources,Jsf 2,Favicon,使用h:outputStylesheet,我可以在HTML标题部分嵌入CSS资源,但是如何为呈现HTML的图像资源构建,如本例所示: HTML输出: <head> ... <link rel="icon" type="image/png" href="favicon.png" /> ... </head> ... ... 图像资源位于/resources/images中 如果我在JSF模板中使用直接HTML代码,如href=“/resources/i

使用h:outputStylesheet,我可以在HTML标题部分嵌入CSS资源,但是如何为呈现HTML的图像资源构建
,如本例所示:

HTML输出:

<head>
... 
<link rel="icon" type="image/png" href="favicon.png" />
...
</head>

... 
...
图像资源位于
/resources/images

如果我在JSF模板中使用直接HTML代码,如
href=“/resources/images/favicon.png”
则找不到资源-导航到/resources/images/favicon.png会导致错误

/参考资料/images/favicon.png/index.jsf 找不到

(我已将index.jsf设置为web.xml中的索引页,这可能会解释此路径)

href=“/resources/images/favicon.png”
实际上正在查看服务器的根目录,而不是web应用程序目录

您的href位置需要包括web应用程序目录
href=“/webappname/resources/images/favicon.png”


如果您的.xhtml文件与资源文件夹位于同一目录中,那么在当前位置删除正斜杠也可以。
href=“resources/images/favicon.png”

您的Web应用程序显然正在非空的上下文路径上运行。前导斜杠
/
将您带到域根。使用
#{request.contextPath}
动态内联上下文路径

<link rel="shortcut icon" type="image/png" href="#{request.contextPath}/resources/images/favicon.png" />


(请注意,我修复了
rel
并使其与交叉浏览器兼容)

可以在部署时设置web应用程序名称,在硬编码资源中使用它可能会很危险。在我的示例中,应用程序部署在服务器根
http://localhost:8080/
directly@BalusC我指的不是像/web/index.xhtml和/web/resources这样的资源文件夹/