当前位置: 首页 > 图文教程 > 网络编程 > JSP > JBuilder2005实战JSP之错误处理(4)

JSP
Java 创建cookie和删除cookie
jsp 从web.xml读取连接数据库的参数
jsp 不支持EL表达式,解决办法
jsp 获取客户端的浏览器和操作系统信息
struts2 session 解读
struts2 spring整合fieldError问题
jsp 生成验证码代码
搭建java WEB开发环境和应用
JSP 自定义标签
Java 区分文本中的中英文字符函数
通用JSP页面 jsp入门级文章
jsp struts1 标签实例详解
一个jdbc 测试程序代码
SSH整合中 hibernate托管给Spring得到SessionFactory
jsp SmartUpload 实现上传功能代码
jsp Unsupported encoding: gb2312 错误原因
java Struts2 在拦截器里的跳转问题
jsp 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)
Java 项目生成静态页面的代码
jdk与jre的区别 很形象,很清晰,通俗易懂

JBuilder2005实战JSP之错误处理(4)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 79 ::
收藏到网摘: n/a

    错误处理页面error.jsp

  Web应用程序一般都有一个或多个统一的错误处理JSP页面,以便在功能性的JSP页面发生错误时,能以一种友好的形式向用户反馈。友好而统一的错误页面是Web展现层一个无可忽略的方面。

  下面,我们创建错误处理error.jsp文件,其代码如下所示:

  代码清单 11 error.jsp错误处理JSP页面

1. <%@page contentType="text/html; charset=GBK" isErrorPage="true" %>
2. <html>
3. <head>
4. <title>error</title>
5. </head>
6. <body bgcolor="#ffffff">
7. 抱歉,系统发生异常,点击<a href="login.jsp">这儿</a>返回首页
8. </body>
9. </html>

  错误处理JSP页面的page指令标签中的isErrorPage属性应该设置为true,如第1行所示,这样JSP页面中就可以访问exception隐含对象了。在第7行,我们用一种"优雅"的方式向用户报告程序错误并提供一个返回到登录页面的链接。

  现在,我们回过头去,通过<%@ page errorPage="错误处理JSP"%>将error.jsp指定为switch.jsp和login.jsp的错误处理页面。

  为switch.jsp页面添加错误处理页面后,其代码如下:

  代码清单 12 switch.jsp添加错误处理Jsp页面

1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
2. <%@page import="bookstore.*"%>
3. <%@page import="java.sql.*"%>
4. …

  为login.jsp页面添加错误处理JSP页面后,其代码如下:

  代码清单 13 login.jsp添加错误处理页面

1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
2. <%@page errorPage="error_error.jsp"%>
3. …

  这样,当switch.jsp的SQL查询语句不正确引发SQLException异常时,那个晦涩难懂的异常迹信息错误页面不见了,取而代之的是下面这个友好的报错页面:


图 15 友好的错误处理页面

  登录失败fail.jsp

  当用户提供不正确的密码时,switch.jsp将转向fail.jsp页面,同样你可以通过JSP向导创建fail.jsp页面,fail.jsp的代码如下:

  代码清单 14 fail.jsp 登录失败页面

1. <%@ page contentType="text/html; charset=GBK" errorPage="error.jsp" %>
2. <html>
3. <head>
4. <title>
5. fail
6. </title>
7. </head>
8. <body bgcolor="#ffffff">
9. 你输入的密码不正确,点击<a href="login.jsp">这儿</a>返回登录页面。
10. </body>
11. </html>

  当用户密码输入错误后,所看到的fail.jsp页面效果,如下图所示:


图 16 fail.jsp页面效果