如何将请求从web1 / servlet转发到web2 / servlet?
我有两个Web应用程序说web1和web2。 我想将web1 / servlet1的请求转发到web2 / servlet2。 可能吗? 请帮忙!
这是一个两步过程:
- 掌握代表
web2
的ServletContext
- 从
ServletContext
对应的ServletContext
获取RequestDispatcher
所以,这样的东西,来自servlet1
:
ServletContext web1 = getServletContext(); ServletContext web2 = web1.getContext("/web2"); RequestDispatcher dispatcher = web2.getRequestDispatcher("/servlet2"); dispatcher.forward(request, response);
所有这一切都有一个很大的警告 – 容器可能没有配置为允许跨上下文转发,因为它存在潜在的安全风险。 如果是这种情况, getContext("web2")
将返回null
。