05. JSP 异常处理

来源:互联网 发布:36人才网 知乎 编辑:程序博客网 时间:2024/06/07 15:00
JSP 异常处理

JSP 对于常规的try catch块处理异 和 同Servlet一样通过 web.xml 配置指定错误处理页面之外,也本身提供了为某个页面的抛出的异常指定错误处理页的标签;
主要是使用了<%@ page %>指令的 errorPage 属性和 isError 属性;

一个简单的示例如下:

mian.jsp : 抛出异常的页面
当一个页面通过 Page 指令指定了errorPage时,当抛出异常,会直接跳转到指定的 errorPage,同时向errorPage传递一个包含该异常信息的 exception 的隐含对象;

showError.jsp : 处理,显示异常的页面
1
<%@ page isErrorPage="true" %>
2
<html>
3
<head><title>Show Error Page</title></head>
4
<body>
5
<p>Here is the exception stack trace: </p>
6
<pre>
7
<% exception.printStackTrace(response.getWriter()); %>
8
</pre>
9
</body>
10
</html>

※ 对于以上的流程,也可以将 main.jsp 的异常导向一个 Servlet 处理异常,之后再转发到一个负责显示异常信息的JSP页面;
※ 如果是要对产生的异常状态码的 JSP 页面指定错误处理页面,可以通过在web.xml 绑定<error-page>标签的方式,如下:
假设对所有页面产生404状态码的页面全部导向 pageNotFindPage.jsp ,web.xml 如下设置:
1
<web-app>
2
    <error-page>
3
        <error-code>404</error-code>
4
        <location>/pageNotFindPage.jsp</location>
5
    </error-page>
6
<web-app>




原创粉丝点击