JBuilder2005實戰JSP之錯誤處理

來源:互聯網
上載者:User
錯誤處理頁面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頁面效果
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.