我有一个存在于路径的servlet:
/myservlet1/doit
当调用这个servlet时,我希望它将请求(最后)转发给第二个名为的servlet:
/myservlet2/finish
我编码:
ServletContext ctx = this.getServletContext().getContext("/myservlet2");
RequestDispatcher dispatcher =
ctx.getRequestDispatcher("/myservlet2/finish");
dispatcher.forward(request, response);
但是我没有找到指示“/myservlet2/finish
”。
答案 0 :(得分:0)
当我们执行getRequestDispatcher
时,我们会向调度程序的上下文提供 relative 的URL。因为我们要求/myservlet2
的servlet上下文,所以当我们请求请求调度程序时,提供给getRequestDispatcher
的路径是相对于上下文的。这意味着正确的代码片段应为:
ServletContext ctx = this.getServletContext().getContext("/myservlet2");
RequestDispatcher dispatcher = ctx.getRequestDispatcher("/finish");
dispatcher.forward(request, response);