이전글
Exception 타입에 따른 오류 처리 JSP 맵핑하기
WEB-INF/web.xml 설정에서 <error-page>태그를 이용하여 서버에서 Exception이 발생하였을 때 Exception 의 클래스 타입에 따라 원하는 처리 페이지를 지정해줄 수 있습니다.
다음과 같이 web.xml에 <error-page>태그를 넣고 <exception-type>에는 처리를 원하는 Exception을 <location> 태그에는 사용자에게 보여줄 처리 페이지 경로를 넣습니다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaeehttp://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/internalEx.jsp</location>
</error-page>
</web-app> |
cs |
웹 어플리케이션 경로/internalEx.jsp 페이지입니다. 별다를 것 없는 단순 JSP 페이지입니다. 앞의 설정대로라면 웹 어플리케이션 내에서 NullPointerException이 발생하는 경우 따로 try-catch문으로 예외 처리를 해주지 않는 이상 internalEx.jsp 페이지의 결과를 리턴합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
죄송합니다.
내부 오류가 발생하였습니다.
</body>
</html> |
cs |
nullEx.jsp 페이지입니다. 이페이지를 요청하면 강제로 NullPointerException이 발생하게 되고 설정에 따라 internalEx.jsp 페이지의 결과를 볼 수 있을 것입니다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<%
String nullStr = null;
System.out.println(nullStr.toString());
%>
</body>
</html> |
cs |
nullEx.jsp를 요청하게 되면 web.xml 에러 처리 설정에 따라 internalEx.jsp의 처리 결과가 리턴됩니다.
'Servlet&Jsp' 카테고리의 다른 글
[서블릿/JSP] errorPage 설정시 버퍼 사이즈 설정 주의사항 (0) | 2018.08.02 |
---|---|
[서블릿/JSP] JSP, 톰캣 에러 처리 설정 중복시 우선 순위 (0) | 2018.08.01 |
[서블릿/JSP] HTTP 응답 상태 코드별로 처리할 JSP 지정하기 (0) | 2018.08.01 |
[서블릿/JSP] Internet Explorer에서 jsp 500 에러 출력시 "웹 사이트에서 페이지를 표시할 수 없습니다" 표시되는 문제 (0) | 2018.07.30 |
[서블릿/JSP] JSP 예외 처리하기. isErrorPage 및 errorPage 옵션. (0) | 2018.07.29 |