如何将请求从web1 / servlet转发到web2 / servlet?

时间:2011-02-03 16:57:48

标签: java servlets

我有两个Web应用程序说web1和web2。我想将web1 / servlet1的请求转发到web2 / servlet2。可能吗?请帮忙!

1 个答案:

答案 0 :(得分:8)

这是一个两步过程:

  1. 抓住代表ServletContext
  2. web2
  3. 从与RequestDispatcher
  4. 对应的ServletContext获取servlet2

    所以,这样的事情,来自servlet1内部:

    ServletContext web1 = getServletContext();
    ServletContext web2 = web1.getContext("/web2");
    RequestDispatcher dispatcher = web2.getRequestDispatcher("/servlet2");
    dispatcher.forward(request, response);
    

    所有这一切都有一个很大的警告 - 容器可能没有配置为允许跨上下文转发,因为它存在潜在的安全风险。如果是这种情况,getContext("web2")将返回null