[JSP] 에러 처리
2022. 3. 19. 14:53ㆍLanguage`/JSP (Java Server Page)
728x90
반응형
에러 페이지
- 실행 도중 Exception이 발생하면, 에러 화면 대신 지정한 에러 페이지를 보여줄 수 있다
## 에러 발생시 보여줄 페이지 ##
<%@ page errorpage = "~~~~~~~" %>
## 에러 처리 페이지 ##
<%@ page isErrorPage = "true" %>
처리 우선순위
1) page 디렉티브의 errorPage 속성
2) web.xml 파일의 <exception-type> : 범용 에러 처리
3) web.xml 파일의 <error-code> : 별도 에러 처리
4) WAS가 제공하는 기본 에러 페이지
에러 코드
- 200 : 요청을 정상적으로 처리
- 307 : 임시로 페이지를 리다이렉트
- 400 : Client 요청이 잘못됨
- 401 : 접근 허용 X
- 404 : 요청한 URL 경로 X
- 500 : 요청 메소드(GET, POST, ..)를 허용 X
- 503 : JSP Exception 발생
- 504 : 서버가 서비스 제공을 못함 (서버측 문제)
[Network] HTTP Status Code
1xx : Information Responses Request를 받았고 Process를 계속 진행 주요 Status Code Status Text 100 Continue - 진행 중임을 의미한다 - 현재까지의 진행상태에 문제가 없다 - Client가 계속해서 요청을 하거..
cs-ssupport.tistory.com
Example)
## 에러 발생 페이지 ##
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page errorPage="error/error_NPE.jsp" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
String value = request.getParameter("name").toUpperCase();
%>
</body>
</html>
## 에러 처리 페이지 ##
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page isErrorPage="true" %>
<html>
<head>
<title>Title</title>
</head>
<body>
에러가 발생했습니다.<br>
<%
out.println("에러 타입 : " + exception.getClass().getName() + "<br>");
out.println("에러 메시지 : " + exception.getMessage());
%>
</body>
</html>
에러 코드로 에러 페이지 처리
- web.xml 파일에 아래 양식을 추가한다
<error-page>
<error-code>에러코드</error-code>
<location>에러 페이지 URI</location>
</error-page>
Exception 타입별로 에러 페이지 처리
- web.xml 파일에 아래 양식을 추가한다
<error-page>
<exception-type>자바 Exception 타입</exception-type>
<location>에러 페이지 URI</location>
</error-page>
>> page 디렉티브에 errorPage를 지정해주지 않아도 web.xml 파일에 존재하는 <error-page>에 따라서 에러 페이지가 나타난다
728x90
반응형