我2个工程在JSP上写一样的代码
response.sendRedirect("/error.jsp");
结果第一个返回地址是
http://localhost:8080/工程名/error.jsp
第2个返回地址是
http://localhost:8080/error.jsp
我想让第2个带上工程名,需要怎么做?请大家帮忙在线等~~~~~~~~~~~~~~

解决方案 »

  1.   

    不会吧,如果你确认都是response.sendRedirect("/error.jsp");就不会有问题,确认一下两个地方是不是都有"/"
      

  2.   

    你用的什么框架,如果是struts的话。看一下web.xml的配置可对
      

  3.   

    你要看你的这次请求路径是什么 这个路径只是相对这次请求的路径来的。最好的方法就是写个过滤器 在项目刚加载的时候 获取项目的路径 让后藏在application里 要用的时候直接取application里的路径+你要返回的文件名。
      

  4.   

    也就是说使用绝对路径 不要使用相对路径 实在不行就试试 response.sendRedirect("/WEB-INF/error.jsp")
      

  5.   

    是在不行你就获取项目名称+页面response.sendRedirect("error.jsp");${contextPath}
      

  6.   

    用哪种高级的jsp页面,一般都帮你设置了个basePath,这样使用绝对路径肯定是没有问题的!例如你的error.jsp放在webRoot下就取response.sendRedirect(basePath>+"error.jsp");总之你去绝对路径无论页面怎么跳,都不会出现路径问题了!
      

  7.   

    你首先要看第你现在在的路径如:http://127.0.0.1:8080/test/aa.do
                             response.sendRedirect("/aa.jsp");