一个或多个资源的目标是“head”,但视图中未定义“head”组件。

12

我使用了PrimeFaces组件创建了一个JSF页面。项目运行良好,但是PrimeFaces UI外观完全丢失。我只在服务器日志中注意到以下消息:

一个或多个资源的目标是“head”,但视图中没有定义“head”组件

这是什么意思,我该如何修复PrimeFaces UI样式?

1个回答

33
这意味着你在你的XHTML模板中使用了普通的HTML <head>,而不是JSF <h:head>。JSF <h:head>允许通过 @ResourceDependency 注释自动包含 CSS/JS 资源到生成的 HTML <head> 中。作为基于 jQuery 的 JSF 组件库,PrimeFaces 需要自动包含一些 jQuery/UI JS/CSS 文件,这确实需要一个 <h:head>
因此,请查找一个...
<head>
    <title>Some title</title>
    ...
</head>

在您的模板中将其替换为

<h:head>
    <title>Some title</title>
    ...
</h:head>

另请参阅:


好的,现在错误信息消失了,但是PrimeFaces和Crud仍然分别运行! - James Forland
2
如果您需要答案,只需点击“提问”按钮来提出问题。当前的问题已经得到了回答。 - BalusC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接