在JAVA WEB工程中可以自定義異常處理頁(yè)面。
具體操作步驟如下:
1、在web.xml中,加上如下配置:
<error-page>
<error-code>500</error-code>
<location>/error/500.jsp</location>
</error-page>
2、新建500.jsp,內(nèi)容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" pageEncoding="UTF-8" contentType="text/xml; charset=UTF-8" %>
<wml>
<%=request.getAttribute("javax.servlet.error.message")%>
</wml>
注意,此頁(yè)面跟JSP的異常頁(yè)面不是一個(gè)意思,可以沒(méi)有isErrorPage="true"這個(gè)頭屬性。同時(shí)也不需要設(shè)置:response.setStatus(HttpServletResponse.SC_OK);
同時(shí):request.getAttribute("javax.servlet.error.message")方法,獲取拋出的異常信息。注意,在這不能通過(guò)exception.getMessage()獲取。
異常的其他屬性還有:
javax.servlet.error.status_code,
javax.servlet.error.exception_type。要獲取全部的屬性,請(qǐng)用request.getAttributeNames()遍歷,查看。
3、測(cè)試,在測(cè)試代碼中寫(xiě)上:response.sendError(500,"ImgUrl config must not by empty!");
經(jīng)測(cè)試,結(jié)果返回如下:
vmagid must not empty!