本文共 1795 字,大约阅读时间需要 5 分钟。
jsp中错误处理页面-isErrorPage="true"
举例说明:mustBeError.jsp
1 <%@ page contentType="text/html; charset=gb2312" 2 language="java" import="java.sql.*,javax.servlet.*,javax.servlet.http.*" errorPage="error.jsp" %>3 <%4 //这个页面一定会出错。5 int i=0;6 int j=1;7 out.println(j/i);8 %>
在此中通过errorPage="error.jsp"来指定出错时错误处理页面
error.jsp
1 <%@ page contentType="text/html; charset=gb2312" language="java" isErrorPage="true" import="java.io.*"%> 2 3 4出错了! 5 6 7 8 出错了! 9 发生了以下的错误:10
11
12 getMessage():13 <%=exception.getMessage()%>
14 getLocalizedMessage():15 <%=exception.getLocalizedMessage()%>
16 PrintStatckTrace():17 <%18 StringWriter sw=new StringWriter();19 PrintWriter pw=new PrintWriter(sw);20 exception.printStackTrace(pw);21 out.println(sw);22 %>23 24
在web.xml中声明异常和错误页面
1 例如: 2 3 48 9 12 13404 10/pageNotFound.html 1114 17 18java.lang.NumberFormatException 15/NumberFormatException.html 16
说明:指定错误代码为404是,调用/pageNotFound.html
也可以指定错误类型如:java.lang.NumberFormatException,出现此错误类型是调用/NumberFormatException.html
在error.jsp中,首先在page指令中指定:
isErrorPage="true"
这是非常关键的地方,只有这样指定,这个页面才能进行错误处理,才能使用exception对象。
exception对象有几个非常重要的方法,用于获得出错的信息,这些方法如下:
<%=exception.getMessage()%>
<%=exception.getLocalizedMessage()%> <% exception.printStackTrace(PrintWriter);%>最后一个方法用于打印错误堆栈。如果需要在错误页面以外使用这个exception对象,那么可以这样把exception对象保存起来:
session.setAttribute("myError",exception);
在另一个页面使用:
Exception exception=( Exception )session.getAttribute("myError");
把这个异常对象引入进来。
本文转自SummerChill博客园博客,原文链接:http://www.cnblogs.com/DreamDrive/p/4090974.html,如需转载请自行联系原作者