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 中它是可选的。
问候!