jsp获取发起请求的servlet路径

servlet a.java,通过dispatcher.forward(request,response)到达a.jsp,a.jsp通过form action 到达servlet b.java,b.java通过dispatcher.forward(request,response)到达b.jsp,那么在b.jsp中怎样获取b.java的路径?
我试了试,如果在b.jsp中request.getHeader("Referer"),获取到的竟然是a.java,这是为什么呢?

你要获取的是什么路径:

    web应用:

      EL表达式获取: ${pageContext.request.contextPath }

      EL表达式通过配置初始化参数获取: ${initParam.root }

    2. 获取servlet的路径:

        a. request.getFullName(); 获取到当前servlet的名称

        b. request.getContextPath(); 获取整个web应用的名称

        c. request.setAttribute("name", (b) + "/servlet/" + (a) ); 作为参数传递给 b.jsp

        d. 在jsp页面通过EL表达式获取: ${name }



            希望能帮助你

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-31
servlet是要配置的。所以,路径是部署的人知道。
相似回答