关于 jsf 2:jsf – jquery.js Not Found on html simple

jsf - jquery.js Not Found on html simple

在我的 WebApp 上导航时,我在 Google Chrome 的控制台上收到此错误:

1
2
3
4
GET http://localhost:8080/Bichos/slider/js/jquery.js 404 (Not Found)
GET http://localhost:8080/Bichos/slider/js/slider.js
GET http://localhost:8080/Bichos/slider/images/arrow-left.png
GET http://localhost:8080/Bichos/slider/images/arrow-right.png

这是文件夹结构:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
---Bichos
   |
   `---- Web Pages
         |
         |---- WEB_INF
         |
         |---- css
         |     |---- fonts.css
         |     `---- default.css
         |
         |---- images
         |     |---- a.png
         |     `---- b.png
         |
         |---- pages
         |     |---- admin.xhtml
         |     `---- index.xhtml
         |
         |---- resources
         |     `---- css
         |           `---- pstyle.css
         |
         |---- slider
         |     |---- images
         |     |     |---- arrow-left.png
         |     |     `---- arrow-right.png
         |     |---- js
         |     |      |---- jquery.js
         |     |      `---- slider.js
         |     `---- index.html
         |
         `---- principal.xhtml

应用程序是 JSF 2.1,我听说 web.xml 文件中的 Faces Servlet 配置可能是一个因素,所以这是实际配置:

1
2
3
4
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
</servlet-mapping>

位于 /pages/admin.xhtml 和 /pages/index.xhtml 的页面可以正常工作,并且可以相互引用以及 principal.xhtml。

当访问 /slider/index.html 文件(使用 URL http://localhost:8080/Bichos/slider/index.html)时,似乎正在加载引用的样式表:

1
<link rel="stylesheet" href="style.css"/>

但是这些引用没有加载:

1
2
<script src="js/jquery.js">
<script src="js/slider.js">

我尝试通过 URL http://localhost:8080/Bichos/slider/js/jquery.js 访问这些文件,但得到 404 状态。

我有点卡住了,几乎可以肯定解决方案在于 servlet 映射,但我不

使用的环境是 Glassfish 4.0、JSF 2.1 (Facelets)、PrimeFaces 5.0。

请帮忙,提前谢谢。


经过反复试验,我意识到来源的引用

1
2
<script src="js/jquery.js">
<script src="js/slider.js">

不被引用为 type="text/JavaScript"。我做了一些研究,发现 HTML 4.0 和 XHTML 是声明 type 属性所必需的,但在 HTML 5 中它是可选的。

问候!