5.异常处理

在 web.xml 中使用 error-page 元素来指定对特定异常 或 HTTP 状态码 作出相应的 Servlet 调用。

例:

<!--对IE无效-->
<error-page>
    <error-code>404</error-code>
    <location>/NotFound</location>
</error-page>

<!--捕获抛出的所有异常-->
<error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/Error</location>
</error-page>
@WebServlet("/NotFound")
public class NotFoundHandler extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.getWriter().write("不能找到所需资源!");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}

当页面发送404错误时,会由servletNotFoundHandler来处理。

对IE无效:IE只能显示自己的错误页面,不会显示自定义的返回内容。