应用程序中未引用JS文件

我有jsp页面里面调用我的xhtml页面。 我将xhtml映射到facesServlet并使所有资源servlet处于活动状态,因此如果我点击xhtml页面,它会映射所有js和css文件。

如果我点击jsp页面然后那些文件没有引用firebug弹出各种js错误。

为了解决这个问题,我将js和css文件添加到了web文件夹中并且包含并尝试了它们,包括xhtml和jsp页面,但是那些没有被引用,截至目前,如果我直接点击xhmtl页面,那么文件上传工作正常但是如果我去打jsp页面然后最终得到js错误,有没有任何其他方式获取js文件。

这是我如何引用我的js文件

                            

有什么想法,建议吗?

更新:

我有使用jsf2创建新页面的要求,我已经创建了xhtml页面,但是我想得到我的应用程序headerfooter主题,并且这些是在jsp中定义的,现在我试图将jsp集成到xhtml但是正确地建议一个人不能做到这一点。

尝试如何在Facelets页面中包含JSP页面? 但这不起作用,因为my标签不被识别,所以最后尝试创建jsp页面并在其中包含xhtml页面,这似乎工作,但不是100%。

因为它现在正好如果我直接点击xhtml页面然后它工作,但如果我点击jsp页面与header/footer信息然后icefaces或说jsf东西不能100%工作,希望能够澄清我想要实现的目标。

更新2

来自javax.faces.resources js文件在xhtml页面上被引用但在jsp页面上没有被引用。

这是webbrowser必须下载那些JS / CSS文件。 服务器不是必须加载/包含那些JS / CSS文件。

因此,您在srchref属性中指定的路径将相对于当前请求URL进行解析,如浏览器的地址栏中所示。 它们不会相对于公共webcontent中JSP文件的位置进行解析。

因此,如果您碰巧在请求URL中有上下文路径,就像这样

HTTP://本地主机:8080 / somecontextpath / page.jsp

那么例如你的将由webbrowser从以下URL下载

HTTP://本地主机:8080 / CSS / main.css的

实际上应该是

HTTP://本地主机:8080 / somecontextpath / CSS / main.css的

相应地修复它。

  

或者如果你正在使用Facelets

  

或者,如果您使用的是JSF 2 (以及组件)

  

(并将/css/js文件夹放在public webcontent的/resources子文件夹中)


顺便说一句,以下行绝对没有意义:

  

你在这里混合了视图技术。 你不能将这一个包含在另一个中。 Facelets是JSP的inheritance者。 使用其中一个。 您可以在1个webapp中混合它们,但不能在1个视图中混合它们。