我使用GlassFish 4.1在NetBeans 8.02中创建了一个Java JSF应用程序。作为facelet创建的其中一个网页包含以下标记:
<h:head>
<title>Address Book: Add Entry</title>
<h:outputStylesheet name="style.css" library="css"/>
</h:head>
当我运行应用程序时,我收到错误:
Unable to find resource css, style.css
我查看项目中的Web Pages / resources / css文件夹,并且存在style.css。如果我从另一个项目添加style.css文件夹,一切正常。
我需要做什么才能将style.css自动放入正确的文件夹而不是我手动执行它 - 或者在我如何设置项目或编写xhtml标签时缺少某些内容?
答案 0 :(得分:7)
在我看来,您没有使用正确的 / resources 文件夹,您应该使用Web应用程序根目录中的 / resources 目录,如Tiny的评论所提到的( WebContent 的子文件夹),而不是包含java类的资源文件夹。这是一个例子:
但是,您没有正确使用h:outputStylesheet
,您应该更好地使用它:
<h:outputStylesheet name="css/styles.css" />
有关JSF资源库的详细答案由BalusC提供:What is the JSF resource library for and how should it be used?
答案 1 :(得分:2)
我遇到了与NetBeans 8.1相同的问题。 我写了
解决了这个问题h:outputStylesheet name =“resources / css / default.css”
h:outputStylesheet name =“resources / css / cssLayout.css”
我没有将位置更改为样式文件: the path to the stylesheet files in the project view of NetBean 8.1
答案 2 :(得分:1)
这似乎是Netbeans 8.1的一个问题。但是,版本7会正确生成模板页面。
尝试将h:outputStylesheet标记替换为下面的标记:
<link href="./resources/css/style.css" rel="stylesheet" type="text/css"/>
答案 3 :(得分:0)
试试这个:
我遇到了同样的问题但如果您知道属性库以获取Me的默认路径,则很容易解决。
css StyleSheets的默认位置是“./resources/css/yourcss.css”