Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP isErrorPage 속성 완벽 가이드 - errorPage와의 차이점까지 한눈에

JSP에서는 페이지 실행 중 예기치 않은 오류가 발생했을 때 이를 우아하게 처리할 수 있는 방법을 제공합니다. 핵심 역할을 하는 것이 바로 errorPageisErrorPage 속성입니다. 이번 글에서는 두 속성의 개념과 사용법, 그리고 서로 어떻게 연동되는지 자세히 알아보겠습니다.

errorPage 속성이란?

errorPage 속성은 현재 JSP 페이지가 실행되는 도중 오류가 발생했을 때, JSP 엔진에게 어떤 페이지를 대신 화면에 표시할지 지정하는 역할을 합니다. 즉, 오류 발생 시 사용자에게 보여줄 대체 페이지를 정의하는 것입니다.

errorPage 속성의 값으로는 상대 URL(relative URL)을 사용합니다.

다음 지시문은 해당 페이지에서 처리되지 않은(uncaught) 모든 예외가 발생했을 때 MyErrorPage.jsp를 표시하도록 설정합니다.

<%@ page errorPage = "MyErrorPage.jsp" %>

isErrorPage 속성이란?

isErrorPage 속성은 현재 JSP 페이지가 다른 JSP 페이지의 오류 처리 전용 페이지(에러 페이지)로 사용될 수 있음을 선언하는 속성입니다.

isErrorPage 속성의 값은 true 또는 false 중 하나이며, 기본값은 false입니다.

예를 들어, handleError.jsp는 오류를 처리하는 역할을 담당하는 페이지이므로 isErrorPage 값을 true로 설정해야 합니다.

<%@ page isErrorPage = "true" %>

두 속성의 연동 방식

두 속성은 함께 사용됩니다. 오류가 발생할 가능성이 있는 일반 JSP 페이지에는 errorPage 속성으로 에러 처리 페이지를 지정하고, 그 에러 처리 페이지에는 isErrorPage="true"를 선언합니다.

isErrorPage를 true로 설정하면 해당 JSP 내부에서 exception 내장 객체(implicit object)를 사용할 수 있습니다. 이 객체를 통해 발생한 예외 정보에 접근하여 사용자에게 친절한 오류 메시지를 제공하거나 로그를 남길 수 있습니다.

정리

errorPage는 '오류가 나면 어디로 갈까'를 결정하는 속성이고, isErrorPage는 '나 자신이 오류를 처리하는 페이지인가'를 선언하는 속성입니다. 두 속성을 적절히 활용하면 스택 트레이스가 그대로 노출되는 불친절한 오류 화면 대신, 깔끔하고 안내적인 커스텀 에러 페이지를 구현할 수 있습니다.