我的应用程序包含两个 Web 模块,如下所示:
<module>
<web>
<web-uri>myWeb1.war</web-uri>
<context-root>/web1</context-root>
</web>
</module>
<module>
<web>
<web-uri>myWeb2.war</web-uri>
<context-root>/web2</context-root>
</web>
</module>
,我需要将“web1”模块的请求转发到“web2”,如下所示。
RequestDispatcher rd = getServletContext().getContext("/web2").getRequestDispatcher("/servlets/actReq");
rd.forward(request, response);
问题是,是否可以检索上下文根名称:“web2”,而不是在代码中对其进行编码。我不想硬编码上下文根的原因是因为这可能会在 EAR 包的部署过程中发生变化。
提前致谢。