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>
现在,我们回过头去,通过<%@ 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. …
代码清单 13 login.jsp添加错误处理页面
1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
2. <%@page errorPage="error_error.jsp"%>
3. …

图 15 友好的错误处理页面
当用户提供不正确的密码时,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>

图 16 fail.jsp页面效果
