AngelPlayer`s Diary

웹 어플리케이션 실행 도중 발생할 수 있는 오류에 대비한 예외처리를 통해 비정상적 종료를 막음

 

 

1. page 디렉티브 태그를 이용한 예외처리 (errorPage / isErrorPage)

errorPage 속성 - 실행 도중 에러가 발생하면 웹 서버의 기본 오류 페이지를 대신하여 errorPage 속성에 설정한 페이지가 오류 페이지로 호출됨

 

예외처리 할 페이지의 페이지 디렉티브에 아래 코드를 정의

<%@ page errorPage = "에러가 나타났을 때 보여줄 페이지 url" %>

 

 

 

isErrorPage 속성 - 에러 페이지에 해당하는 JSP 페이지에 페이지 디렉티브의 isErrorPage 속성의 값을 "true"로 지정하여 사용

isErrorPage 사용 시 exception 내장 객체 사용 가능

<%@ page isErrorPage="true" %>

...

<p>에러 타입 : <%= exception.getClass().getName() %></p>
<p>에러 메세지 : <%= exception.toString() %></p>

 

예외처리 할 페이지는 마찬가지로 errorPage를 페이지 디렉티브에 정의

 

 

 

 

2. web.xml 파일을 이용한 예외 처리

web.xml 내부에 <error-page> 요소 내에 처리할 오류 코드/유형 및 오류 페이지를 호출

 

오류 코드를 이용한 오류 페이지 호출

<error-page>
	<error-code>에러 코드</error-code> // 404
	<location>보여줄 페이지 url</location>
</error-page>

 

 

 

예외 유형을 이용한 오류 페이지 호출

<error-page>
	<exception-type>예외 유형</exception-type> // java.lang.Exception
	<location>보여줄 페이지 url</location>
</error-page>

 

 

 

3. try-catch를 이용한 예외 처리

자바의 예외처리 구문

try {
	// 예외가 발생할 수 있는 구문
}
catch(처리할 예외 유형 e) {
	// 예외 처리문
}
finally {
	// 무조건 실행, 생략 가능
}

 

 

 

세가지 모두 사용하는 경우 우선순위로 인해 try-catch / page 디렉티브 / web.xml 순서로 오류 페이지 호출됨

 

공유하기

facebook twitter kakaoTalk kakaostory naver band