如何获取从servlet内部调用servlet的JSP页面名称

时间:2013-04-10 11:48:50

标签: jsp servlets

我有很多JSP页面,所有这些页面都调用相同的servlet。

是否可以从该servlet中获取调用servlet的JSP页面名称?

2 个答案:

答案 0 :(得分:2)

Servlet是一个服务器端控制器,每当请求的URL与servlet的url-pattern匹配时,doGetdoPost方法都会从service方法调用,如web.xml中所定义,或通过注释的使用。

也就是说,servlet 不是不应该通过发送HTTP请求来了解调用它的HTML元素,就像点击链接一样相同的结果与触发它的<a>元素无关。

当然,您可以将该信息作为请求参数传递,然后通过调用request.getParameter("name")在servlet的方法中检索该信息,其中请求为HttpServletRequestname是描述的参数名称发件人网址。

答案 1 :(得分:0)

不确定你想要什么。

JSP不直接调用Servlet(虽然,它们 servlet)。

您应该将URL映射到web.xml中的Servlet,然后将响应从Servlet中转发给JSP。 如果您需要请求URL,请使用request.getRequestURL();

如果您需要请求参数,请使用request.getParameter(“name”);

转发到JSP:

String nextJSP = "/searchResults.jsp";
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(nextJSP);
dispatcher.forward(request,response);