1.在jsp中使用${pageContext.request.contextPath}获取相对路径,可是最后路径变为:http://localhost:8080/oneself/$%7BpageContext.request.contextPath%7D/css/reset.css 2.贴图,这是浏览器的调试页面,可以看到获取css的路径带上了${pageContext.request.contextPath},而console中打印的获取css地址为$%7BpageContext.reques…
JSP取得绝对路径 在JavaWeb开发中,常使用绝对路径的方式来引入JavaScript和CSS文件,这样可以避免因为目录变动导致引入文件找不到的情况,常用的做法如下: 一.使用${pageContext.request.contextPath} 代码” ${pageContext.request.contextPath}”的作用是取出部署的应用程序名,这样不管如何部署,所用路径都是正确的. 例如: 1 <!--使用绝对路径的方式引入CSS文件--> 2 <link rel="…
一.问题     JSP中究竟采用绝对路径还是采用相对路径随着所采用技术的越来越复杂,这个问题也变得越来越难以解决. 1)采用相对路径遇到的问题      相对路径固然比较灵活,但如果想复制页面内的代码却变得比较困难,因为不同的页面具有不同的相对路径,复制后必须修改每一个连接的路径. 如果页面被多于一个的页面所包含,那么被包含页面中的相对路径将是不正确的. 如果采用Struts的Action返回页面,那么由于页面路径与Action路径不同,使得浏览器无法正确解释页面中的路径,如页面为/pages…
${pageContext.request.contextPath}是JSP取得绝对路径的方法,等价于<%=request.getContextPath()%> . 也就是取出部署的应用程序名或者是当前的项目名称 比如我的项目名称是demo1在浏览器中输入为http://localhost:8080/demo1/a.jsp ${pageContext.request.contextPath}或<%=request.getContextPath()%>取出来的就是/demo1,而&q…
${pageContext.request.contextPath}是JSP取得绝对路径的方法,等价于<%=request.getContextPath()%> . 也就是取出部署的应用程序名或者是当前的项目名称 比如我的项目名称是demo1在浏览器中输入为http://localhost:8080/demo/test.jsp ${pageContext.request.contextPath}或<%=request.getContextPath()%>取出来的就是/demo,而&…
路径引发的错误 如下使用项目路径对jsp页面进行获取,会报javax.servlet.ServletException: File "/web/dbwx/web/public/page_top.jsp" not found 错误. jsp的这个导入标签,根本就是服务器端自己在处理内部资源.整合资源,而不是传到客户端后,客户端再次访问来获取这个jsp页面资源,所以根本不需要web的这个项目名, /就代表着根目录,所以不需要添加项目的名称.但是如: <a href="${c…
这里的疑问在于pageContext和request都是JSP中的内置对象之一,为什么不直接用${request.contextPath}来获取项目路径? 出现这种疑问,其实是将JSP的内置对象和EL表达式的内置对象混淆了. JSP的9大内置对象: application:是servletContext的实例,代表JSP所属的web项目本身 config:是servletConfig的实例,代表当前JSP的配置信息 exception:是java.lang.Throwable的实例,该对象只有在…
取出部署的应用程序名或者是当前的项目名称 http://localhost:8080/demo1/a.jsp  ${pageContext.request.contextPath}或<%=request.getContextPath()%>取出来的就是/demo1…
本随笔这是作为一个记录使用,以备后查.项目完成之后本地部署OK,本地Linux部署OK,都可以正常的访问,可是当我把它部署到服务器上面的时候,首页可以正常访问,可是当发出请求的时候却报错误了,说找不到定义的请求.我很纳闷,本地都OK为什么只有在服务器才能找不到请求.不过按照常理我还是一步一步的来开始排错. 第一步,查看项目部署成功,和部署路径无关,OK. 第二步,查看web.xml以及struts的请求配置,完全OK,没有问题. 第三步,既然部署没有问题,请求配置都OK,如果不是机器的原因那么只…
${pageContext.request.contextPath}是JSP取得绝对路径的方法,等价于<%=request.getContextPath()%> . 也就是取出部署的应用程序名或者是当前的项目名称 比如我的项目名称是demo1在浏览器中输入为http://localhost:8080/demo1/a.jsp ${pageContext.request.contextPath}或<%=request.getContextPath()%>取出来的就是/demo1,而&q…