如何映射“根”Servlet,以便其他脚本仍可运行?
2022-08-31 17:16:02
我正在尝试构建一个调用 JSP 页面的 Servlet,类似于以下内容:
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException {
req.getRequestDispatcher("/WEB-INF/main.jsp").forward(req, resp);
}
我需要这个Servlet来响应域的根(例如:http://example.com/),所以我在Web中使用以下映射.xml:
<servlet-mapping>
<servlet-name>MainServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
我遇到的问题是,这与所有内容都匹配,因此当调度程序转发到“/WEB-INF/main.jsp”时,这与url模式匹配,因此Servlet再次运行。这会导致一个循环运行,直到它使用java.lang.StackOverflowError死亡。
如何在不阻止其他脚本可运行的情况下匹配根脚本?