繁体   English   中英

无法从.jsp页面找到.js(或.css)文件

[英]Can't locate .js (or .css) files from a .jsp page

我在Windows 7旗舰版下运行Eclipse Indigo的Tomcat 5.54应用服务器。 我的servlet正在使用.jsp,而.jsp页面包含(以及其他)以下内容以将一些JavaScript“包含”到.jsp中:

当servlet运行时,显示.jsp页面,但是我收到404错误,例如“请求的资源(/MyServer/WebContent/WEB-INF/JSP/Scripts/Modernizr-2.5.3.js)不可用。” 在.jsp页面中包含的所有.js和.css文件中。

相关文件位置为:./ WWE-INF / JSP .jsp文件./WEB-INF/JSP/Scripts .js文件./WEB-INF/JSP/CSS .css文件

特别是,Modernizr-2.5.3.js位于(由Eclipse管理)。\\ Projects \\ MyServer \\ WebContent \\ WEB-INF \\ JSP \\ Scripts \\ Modernizr-2.5.3.js。 据我所知,“包含”内容的路径,如.js,.css,图像等,与提交的URL的位置有关,而不是相对于显示的.jsp,我理解这是处理此问题的最佳方法是在src = URL中使用完全限定的路径,我相信我在做。 但是,我收到404错误。 我已经尝试将Modernizr-2.5.3.js(作为测试用例)放在“所有地方”,我从来没有能够消除404错误。 (我意识到我可以从网上提取这个特殊的脚本,但这并不能解决我的问题。)

我在src = URL中有错误吗? 如果没有,还有什么会导致这些404错误?

谢谢您的帮助。

WEB-INF无法公开发布。 它通常用于存储JSP和库文件和描述符。 如果你想引用你的javascript和css资源而不必经过从类路径加载它们的一些调度程序(即你想像常规的web资源那样引用它们),它们应该在WEB-INF之外的其他目录中。

所以我建议创建Projects/MyServer/WebContent/jsProjects/MyServer/WebContent/css ,并将你的js和css放在相应的文件夹中。 然后src属性可以指向/js/Modernizr-2.5.3.js和/css/mycss.css

WEB-INF用于类和属性文件,不应用于JSP和其他链接资源。 您应该将文件移动到Web应用程序的根目录或其下的其他目录中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM