【问题标题】:MAVEN Web Project JSF CSS File Couldn't Be Found [duplicate]找不到 MAVEN Web 项目 JSF CSS 文件 [重复]
【发布时间】:2016-11-02 17:54:11
【问题描述】:

我应该如何从 xhtml 中引用它?根据我在网上找到的内容,文件应该如上图所示,但有人说我还需要一些资源 loc 映射servlet-config.xml 这个文件在哪里?我的href 路径是什么?

【问题讨论】:

  • 停止将此标记为重复,如果您没有任何贡献,请离开此主题
  • 我建议休息一下。
  • 请看图。告诉我有什么事情不是你说的
  • 您的图片显示您将资源放置在 main/resources 中,而 Jan 的答案(和副本)明确表示将它们放在 main/webapp/resources 中。
  • 这张照片与昨天的不同,顺便说一句,这里使用了一个普通的 html 链接......哇......

标签: css maven jsf resources


【解决方案1】:

把css/style.css放到webapp/resources/路径下。

webapp
 |-- WEB-INF
 |-- resources
 |    |-- css
 |    |    `-- style.css

正确的 JSF 2.x 方法是使用 <h:outputStylesheet /> 标记来引用样式表。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html">
  <h:head>
    <h:outputStylesheet name="css/style.css" />
  </h:head>
  <h:body>
  </h:body>
</html>

【讨论】:

【解决方案2】:

在我看来,您的设置是正确的。

在这种情况下,您可以做的最好的事情是将其加载到 Chrome 的开发窗口中。它非常有用,即使您不喜欢 Chrome,也值得仅用于特定的工具集。

假设您在 Chrome 中打开了 xhtml 页面,请按 F12 打开开发窗口。然后单击控制台选项卡,查看加载 css 文件是否有任何错误。根据托管或访问它的位置,可能是权限或 CORS 问题。

如果控制台中没有错误,请单击源选项卡,然后打开资源树,直到找到 css 文件。您可以获得有关该特定资源的更具体信息,并获得一些关于它为什么没有加载的指示。

你也可以试试绝对路径;但是,这有点不标准,您应该能够使用相对路径使其工作(正如您尝试做的那样)。如果您绝对无法获得工作的相对路径并需要更快的解决方法,我只是将其作为最后的努力。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    • 2019-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-22
    • 1970-01-01
    相关资源
    最近更新 更多