【问题标题】:Unable to find resource css, style.css [duplicate]找不到资源 css,style.css [重复]
【发布时间】:2015-06-08 20:41:06
【问题描述】:

我使用 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 标记时缺少某些内容?

【问题讨论】:

  • 如果style.css 文件在应用程序根目录下的/ resources /css 下确实可用,则检查部署的WAR 文件以查看style.css 在所需目录中是否真的可用。如果它在部署的 WAR 中不可用,那么您可能不小心忘记在创建 style.css 之后进行硬部署,每当您创建新文件夹/目录并将一些文件放入其中时,NetBeans 基本上都需要这样做。

标签: jsf xhtml


【解决方案1】:

试试这个:

我有同样的问题,但如果你知道属性库来获取我的默认路径,那么很容易解决。

css StyleSheets 的默认位置是“./resources/css/yourcss.css”

【讨论】:

    【解决方案2】:

    我在使用 NetBean 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

    【讨论】:

      【解决方案3】:

      这似乎是 Netbeans 8.1 的问题。但是,版本 7 可以正确生成模板页面。

      尝试将 h:outputStylesheet 标记替换为以下标记:

      <link href="./resources/css/style.css" rel="stylesheet" type="text/css"/> 
      

      【讨论】:

        【解决方案4】:

        在我看来,您没有使用正确的 /resources 文件夹,您应该使用 Tiny 评论中提到的 Web 应用程序根目录中的 /resources 目录(WebContent 的子文件夹),而不是包含您的 java 类的资源文件夹。这是一个例子:

        但是,你没有正确使用h:outputStylesheet,你最好这样使用它:

        <h:outputStylesheet name="css/styles.css" />
        

        BalusC 提供了有关 JSF 资源库的详细答案:What is the JSF resource library for and how should it be used?

        【讨论】:

        • 在项目视图中,resources/css 位于 Web Pages 文件夹下。在文件视图中,resources/css 位于 build/web/、web/ 和 dist/ 下的 .war 文件中。在每种情况下,它只包含 cssLayout.css 和 default.css,而不是 style.css。即使我更改了每个 Tarik 的 h:outputStylesheet 并进行了硬部署,style.css 也不会添加到任何资源/css 文件夹中。
        • @jisteinberg 我听不懂你在说什么,请转到您的 WebContent 文件夹,如果您没有名为 resources 的子文件夹,则创建一个,然后创建一个 css 文件夹并放入你的styles.css文件在里面。哪一部分不清楚?
        • 我手动将styles.css 文件放在resources/css 文件夹中,它可以工作。谢谢。所以当你在facelet中引用它并部署项目时,不会在css文件夹下自动创建该文件?
        • @jisteinberg NO.为什么会创建它以及如何创建? styles.css 文件包含您的 css 参数和首选项,它可以是您在 facelet 中引用以包含它的任何其他名称(myCss.css,...)。请参考我的回答中的链接,并查看BalusC提供的答案,这将有助于您更多地了解该过程
        猜你喜欢
        • 1970-01-01
        • 2016-01-30
        • 2013-06-18
        • 2012-05-16
        • 1970-01-01
        • 2016-07-13
        • 2011-11-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多