如题,本人对相对路径的理解没有问题,也知道jsp中获取相对路径、绝对路径的函数,我的应用名称为 scgl ,示意目录为:
scgl
  |--image
  |    |---a.gif
  |--maintance
  |    |---infolist.jsp
  |    
  |--WEB-INF   如访问infolist.jsp,地址为:http://localhost/scgl/maintance/infolist.jsp,infolist.jsp如果要引用a.gif,就要写成../image/a.gif,写成 /image/a.gif 就变成了 http://localhost/image/a.gif,写成 image/a.gif 就变成了 http://localhost/scgl/maintance/image/a.gif ,现在的问题是有没有简便的引用方法让链接文件的绝对路径从跟路径开始变为从虚拟路径开始(本例中的scgl)本例中访问infolist.jsp是通过servlet跳转的,情况变得更为复杂,在servlet中,通过
getServletContext().getRequestDispatcher("/maintance/infolist.jsp").forward(request, response)跳转到infolist.jsp,此时的infolist感觉变为了应用根目录下的文件,引用a.gif只能通过image/a.gif,问题:1、有没有简便的引用方法让链接文件的绝对路径从跟路径开始变为从虚拟路径开始(本例中的scgl);
2、SERVLET中跳转时如何写才能让infolist的位置正确,即它的相对位置不变,应用a.gif需要通过 ../image/a.gif 这样的写法

解决方案 »

  1.   

    "<%=request.getContextPath()>/image/a.gif"不论页面在哪(n层目录下),你要使用的话,就这么写就行了!
      

  2.   

    / 代表的是站点根目录,要是代表应用根目录就没有这么多问题了,该死的JSP
      

  3.   

    希望各位DX不吝赐教啊,怎样才能简便的表示应用根目录,在JSP中
      

  4.   

    不知道你能不能使用html标签<base href="绝对路径">
    这样就不用每处都加了