JSP提供了很好的错误处理能力。除了在Java代码 中可以使用try语句,还可以指定一个特殊页面。当应 用页面遇到未捕获的异常时,用户将看到一个精心设计 的网页解释发生了什么,而不是一个用户无法理解的错 误信息。 请使用page指令的isErrorPage属性(属性值必须为 True)来标识一个JSP页面是错误页面。

运行的newFile.jsp页面会抛出一个异常。不过,我们 不会看到由Servlet/JSP容器生成错误消息。相反,会看 到errorHandler.jsp页面的内容。

例:

这是一个错误处理程序(error.jsp)

<%@ page isErrorPage="true"    language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%-- error 处理程序 --%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>this is ErrorPage</title>
</head>
<body>
An error has occurred. <br/>
Error message:
<%
out.println(exception.toString());
%> </body>
</html>

这是发生错误的页面(newFile.jsp)

<%@ page errorPage="error.jsp"  language="java"  contentType="text/html charset=utf-8"  pageEncoding="utf-8" %>
<html>
<%-- 发生error的程序 --%>
<head><title>getProperty</title></head>
<body>
hello;
<%
Integer.parseInt("Throw me");
%>
</body>
</html>

jsp 错误处理的更多相关文章

  1. JSP错误页面的处理和exception对象

    exception对象可以使用的主要方法如下所示. l        getMessage():该方法返回错误信息. l        printStackTrace():该方法以标准错误的形式输出一 ...

  2. JSP错误页面处理的两种方式

    JSP错误页面处理的两种方式: 方法1(真能针对单一页面生效,不推荐): 出错页面实例 <%@ page language="java" contentType=" ...

  3. 配置Jsp错误页面

    配置Jsp错误页面一般我们有2种做法: (1)在页面中用指令进行配置,即page指令的errorPage和isErrorPage:可以使用page指令的errorPage来指定错误页!在当前JSP页面 ...

  4. jsp错误解决办法

    jsp页面出现"<%@"的错误提示的解决办法 原因是缺少jar包,在tomcat下的lib中找到servlet-api.jar复制到工程的webcontent->lib ...

  5. java web 自定义错误页面 完整jsp错误页面代码(同时写错误日志) error.jsp

    1.首先配置web.xml  添加一下代码 <error-page> <error-code>500</error-code> <location>/e ...

  6. javaWEB总结(16):jsp错误页面的处理

    前言 网站上线后,jsp页面上有时会出现不友好的错误信息,我们需要展示给用户更加友好的页面.这时候要用到page标签的errorPage和isErrorPage. errorPage 指定当前页面出现 ...

  7. JavaWeb应用出现HTTP 500-Unable to compile class for JSP 错误 的解决

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6383192.html 在上一篇博文中,我们把自己本机的web项目部署到了云主机的tomcat上.之后通过浏览器 ...

  8. error.jsp错误页面跳转,统一异常处理

    常见web项目中会用倒计时然后跳转页面来处理异常 error.jsp关键代码: <script language="javascript" type="text/j ...

  9. java基础之Flex弹性布局、JSP错误处理以及Log4J

    一.Flex弹性布局 1.产生的比较晚,目前在移动网页开发中可以使用,而且逐渐成为主流. 在桌面网页开发中使用的比较少(主要是桌面浏览器的兼容性问题更加严重) 2.开启方法: 在容器标签上加上 dis ...

随机推荐

  1. python - one day

    1. python历史. 2008 年出现 python 2.7 与 python 3.0 两个版本,后来 吉多·范罗苏姆 大叔决定停用 python 2.7,但因用户反对,于是决定于 2020 年停 ...

  2. 小程序开发-Step1

    先申请一个小程序 https://mp.weixin.qq.com/wxopen/waregister?action=step1 根据以上链接步骤一步一步来,认识字就可以完成,没什么特殊的 申请成功之 ...

  3. Hibernate Transformers之三种结果转换说明

    在hibernate使用的过程中,我们通常需要对结果进行解释.Hibernate为我们提供了以下3种查询结果解释方法: Transformers.ALIAS_TO_ENTITY_MAP //把输出结果 ...

  4. python三大神器

    Python 中有很多优秀的包,本文主要讲一下 pip, virtualenv, fabric 1. pip 用来包管理 文档:https://pip.pypa.io/en/latest/instal ...

  5. 关于Jonathan S. Weissman与RIT(罗切斯特理工学院,位于纽约)

    信息来源于:edx平台的 RITx: CYBER501xCybersecurity Fundamentals  课程的介绍(https://courses.edx.org/courses/course ...

  6. dubbo源码分析13——服务本地暴露 exportLocal(url)

    dubbo服务的本地暴露,显然是针对当服务消费者和服务提供者都在同一个jvm的进程内这种场景 .通常是发生在服务之间的调用的情况下.一种情况就是A服务调用B服务的情况,如果A服务和B服务都是在一个线程 ...

  7. DFS不怂之《leetcode-岛屿的个数》

    leetcode刷到这道题: 给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量.一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的.你可以假设网格的四个边均 ...

  8. bootstrap登录界面

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  9. 【转】线程join()方法的含义

    在很多情况下,主线程生成并启动了子线程,如果子线程里要进行大量的耗时运算,主线程往往将于子线程之前结束,但是如果主线程处理完其它事务后,需要用到子线程的处理结果,也就是主线程需要等待子线程执行完成之后 ...

  10. List<> of struct with property. Cannot change value of property. why?

    这个返回如下错误:"Cannot modify the return value of 'System.Collections.Generic.List<MyStruct>.th ...