본문 바로가기
슬기로운 자바 개발자 생활/스프링 및 자바웹 서비스

JSP page 지시자 errorPage, isErrorPage 사용법

by 슬기로운 동네 형 2023. 1. 14.
반응형

JSP page 지시자 errorPage, isErrorPage 사용법

Servlet JSP


 JSP 문법, 페이지 지시자 중 errorPage와 isErrorPage 속성에 대해 알아본다.

 

  •  errorPage = "파일명"
  •  isErrorPage = "true", "false"

 errorPage와 isErrorPage 속성은 JSP 페이지에서 오류가 발생했을 때 오류를 처리 및 관리하는 속성이다.

 confirmPage.jsp라는 페이지를 만들어보자.

 confirmPage.jsp 는 id라는 매개변수를 받아야 정상 작동하는 페이지다. 만약 에러가 발생했을 경우에는 아래의 페이지 시지자 간섭으로 ex_01.jsp 페이지로 에러 처리를 대신한다. jsp의 exception try라고 보면 될듯하다.

 errorPage 안에 코딩된 ex_01.jsp도 필요하다.

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

소스

confirmPage.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page errorPage="ex_01.jsp"%>
<%
	String param = request.getParameter("id");
	if(param.equals("test")){
		param="파라미터가 입력되었습니다.";
	}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>예외 상황 처리</title>
</head>
<body>
	<h4>테스트 페이지</h4>
	<%=param%>
</body>
</html>

ex_01.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page isErrorPage="true"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>예외 상황 처리</title>
</head>
<body>
	<h4>다음과 같은 에러가 발생했습니다</h4>
	에러타입 :
	<%=exception.getClass().getName() %>
	<br>
	<%=exception.getMessage()%>
</body>
</html>

실행

http://localhost:8080/jspedu/confirmPage.jsp 호출해본다.

request.getParameter("id") 값을 읽을 수 없기 때문에 아래처럼 오류가 발생하고 page errorPage 지시대로 ex_01.jsp 페이지 가실행된다. 

http://localhost:8080/jspedu/confirmPage.jsp

http://localhost:8080/jspedu/confirmPage.jsp?id=test 파라미터를 넣어서 호출하게 되면 정상 실행이 된다.

http://localhost:8080/jspedu/confirmPage.jsp?id=test

 

반응형

댓글