jsp中错误处理页面-isErrorPage="true"

举例说明:mustBeError.jsp

 <%@ page contentType="text/html; charset=gb2312"
 language="java" import="java.sql.*,javax.servlet.*,javax.servlet.http.*" errorPage="error.jsp" %>
 <%
   //这个页面一定会出错。
   int i=0;
   int j=1;
   out.println(j/i);
 %>

在此中通过errorPage="error.jsp"来指定出错时错误处理页面

error.jsp

  <%@ page contentType="text/html; charset=gb2312" language="java" isErrorPage="true" import="java.io.*"%>
  <html>
  <head>
    <title>出错了!</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  </head>
  <body>
    出错了!<br>
    发生了以下的错误:
    <br><hr>
  <font color=red><hr>
    getMessage():<br>
    <%=exception.getMessage()%><br><hr>
    getLocalizedMessage():<br>
    <%=exception.getLocalizedMessage()%><br><hr>
    PrintStatckTrace():<br>
    <%
    StringWriter sw=new StringWriter();
    PrintWriter pw=new PrintWriter(sw);
    exception.printStackTrace(pw);
    out.println(sw);
    %><br>
   </font>
  </body> 

在web.xml中声明异常和错误页面

 例如:
 <?xml version="1.0" encoding="ISO-8859-1"?>

 <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
 version="2.4">
 <error-page>
 <error-code>404</error-code>
 <location>/pageNotFound.html</location>
 </error-page>

 <error-page>
 <exception-type>java.lang.NumberFormatException</exception-type>
 <location>/NumberFormatException.html</location>
 </error-page> 

 </web-app> 

说明:指定错误代码为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");

把这个异常对象引入进来。

关于JSP异常的处理的更多相关文章

  1. JSP异常之org.apache.jasper.JasperException(转)

    According to TLD or attribute directive in tag file, attribute items does not accep t any expression ...

  2. jsp基础语言-jsp异常

    JSP异常 jsp页面执行时会出现两种异常,实际是javax.servlet.jsp包中的两类异常JsError和JspException. 1.JsError 在jsp文件转换成servlet文件时 ...

  3. 新建 jsp异常,The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    新项目,新建jsp页面的时候报异常: Multiple annotations found at this line: - The superclass "javax.servlet.htt ...

  4. Ubuntu 14.04 载入 JWS 或 访问 jsp异常的解决方法

    前段时间在Ubuntu 14.04中使用 Chrome登录 Webex准备面试的时候发现无法进入在线面试.搞笑的是前一天尝试进入 Webex的时候还一切正常,不过当时Webex的在线面试没有开始.等到 ...

  5. Myeclipse 保存jsp异常Save FailedCompilation unit name must end with .java, or one of the registered Java-like extensions

    如图 解决方法:去掉jsp页面的调试断点

  6. Tomcat 加载 jsp 异常:ServletException: java.lang.LinkageError

    环境:win10 JDK:java version "1.8.0_131" mvn 内置 Tomcat 报错: javax.servlet.ServletException: ja ...

  7. java中常见的几种异常

    算术异常类:ArithmeticExecption空指针异常类:NullPointerException类型强制转换异常:ClassCastException数组负下标异常:NegativeArray ...

  8. jsp总结

    JSP 定义:    1)Java Server Page, Java EE 组件,本质上是 Servlet.    2)运行在 Web Container.接收 Http Request,生成 Ht ...

  9. 关于java中的异常问题 1

    1.首先参考一下关于java异常处理方面的知识 查看博客http://lavasoft.blog.51cto.com/62575/18920/ 这里介绍的很好,下面从中学习到一些东西,摘抄如下: 1. ...

随机推荐

  1. 设计模式_Strategy_策略模式

    形象例子: 跟不同类型的MM约会,要用不同的策略,有的请电影比较好,有的则去吃小吃效果不错,有的去海边浪漫最合适,单目的都是为了得到MM的芳心,我的追MM锦囊中有好多Strategy哦.策略模式: 策 ...

  2. Max Sub-matrix

    Max Sub-matrix 教练找的题目,目前样列过了 题意:找子矩阵的最大周长 思路:先离散每列,再枚举列(n*n),在当前枚举的两列之间求每行的和(n*n*n),但是开两个数组,一个包含两列上的 ...

  3. ZOJ-3380 Patchouli’s Spell Cards DP, 组合计数

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3380 题意:有m种不同的元素,每种元素都有n种不同的相位,现在假 ...

  4. ovirt user guide

    Contents [hide]  1 ⁠Accessing the User Portal 1.1 Logging in to the User Portal 1.2 Logging out of t ...

  5. 从assemblyer Instructure deepth understander C principle

    要彻底搞清楚C语言的原理,就必须深入到指令一层去理解.你写一行C代码,编译器会生成什么样的指令,要做到心中有数;

  6. Swift对面向对象提供了良好的支持,下面介绍几个其独有的特性。

    Swift对面向对象提供了良好的支持,下面介绍几个其独有的特性. 懒加载属性 Swift在语言层面上提供了类中懒加载属性的支持,使用lazy作为关键字: class Renderer { lazy v ...

  7. C#模仿360安全卫士玻璃按钮,不闪烁,背景切换效率快

    首先先上效果图: 1.准备两张透明的png图片(尺寸74 x 82),一张用于鼠标进入控件时显示,一张用于鼠标单击控件时显示 2.拖一个GlassButton按钮 3.设置按钮属性 this.btnE ...

  8. Tomcat服务器配置文件uri编码设置

    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" ...

  9. Objective-C中的Block(闭包) (轉載)

    来源: 伯乐在线 - 青玉伏案 链接:http://ios.jobbole.com/83229/ 学习OC有接触到一个新词Block(个人感觉又是一个牛气冲天的词),但不是新的概念,不是新的东西.学过 ...

  10. Fox-H 函数

    1.定义 2.特例 3.在分数阶微分方程中的应用 4.如何画图