指定Jsp的錯(cuò)誤頁(yè)面
MVC模式下,?JSP往往只作為頁(yè)面顯示,與業(yè)務(wù)相關(guān)的數(shù)據(jù)庫(kù)操作都是在后臺(tái)的JavaBean(業(yè)務(wù)邏輯層)執(zhí)行,處理完畢之后再跳轉(zhuǎn)某個(gè)jsp顯示頁(yè)面。這種設(shè)置框架,實(shí)現(xiàn)了MVC結(jié)構(gòu),使得整個(gè)系統(tǒng)的維護(hù)難度大大降低。
?????????? 在實(shí)際工作中,JavaBean(業(yè)務(wù)邏輯層) 如果出現(xiàn) Exception 時(shí),則JSP頁(yè)面,會(huì)出現(xiàn)不友好的頁(yè)面,???影響用戶對(duì)該產(chǎn)品的依賴(lài)程度,遭到客戶的投訴。因此,我們需要一種有效的方法進(jìn)行錯(cuò)誤處理。一般是, 將所有Exception的出錯(cuò)內(nèi)容拋出到web頁(yè)面,讓使用用戶立即有錯(cuò)誤發(fā)生,并可以及時(shí)將該出錯(cuò)內(nèi)容提交給開(kāi)發(fā)人員定位出錯(cuò)原因。
(1)在業(yè)務(wù)邏輯層:
?????
???? public void?? 方法 (..)throws Exception{
?????????............
??????????????? throw new Exception("該專(zhuān)題已經(jīng)關(guān)聯(lián)圖書(shū),不能下架!!!");
??????? .............
}
(2)jsp 頁(yè)面執(zhí)行業(yè)務(wù)邏輯??
???
?? <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
????.................
??? ................
?
(3)例如指定 error.sjp?? 為錯(cuò)誤頁(yè)面
<
%@page
contentType="text/html; charset=GBK" isErrorPage="true" %>
<%@ page import="java.io.PrintWriter" %>
<html>
? <head>
??? <title>錯(cuò)誤頁(yè)面</title>
? </head>
?
? <body>
?? <h2>errorPage 的范例程序</h2>
?<p>ErrorPage.jsp 錯(cuò)誤產(chǎn)生:<I><%= exception %></I></p><br>
?<pre>
?問(wèn)題如下:<%=?exception.getMessage()?%>? //輸出錯(cuò)誤的原因
??? </pre>
? </body>
</html>
posted on 2007-03-22 16:59 龔椿深 閱讀(671) 評(píng)論(0) 編輯 收藏