[JSP] 에러 처리
programming/jsp

[JSP] 에러 처리

[어느 게임회사의 흔한 404 Not Found 페이지.png]


4. 에러 처리


4.1 에러 처리의 개요

- 에러가 발생하면 개발자를 위해 소스 코드 및 스택 추적 정보가 화면에 노출됨

- 보안성 향상 및 사이트를 방문하는 사용자들에게 친숙한 안내 화면 제공


4.2 http 상태 코드

에러 코드

의미

설명

1xx

    Informational (정보)

    요청을 받고 처리 중에 있음

2xx

    Success (성공)

    요청을 정상적으로 처리함

3xx

    Redirection (리디렉션)

    요청 완료를 위해 추가 동작이 필요함

4xx

    Client Error (클라이언트 오류)

    클라이언트 요청을 처리할 수 없어 오류 발생

5xx

    Server Error (서버 오류)

    서버에서 처리를 하지 못하여 오류 발생


주요 상태코드


상태 코드

메세지

설명

200

    OK

    요청 정상 처리

400

    Bad Request

    클라이언트의 요청 구문이 잘못됨

401

    Unauthorized

    요청 처리를 위해 HTTP 인증 정보가 필요함

403

    Forbidden

    접근 금지 응답. Directory Listing 요청(서버 파일 디렉토리 목록 표시) 및 관리자 페이지 접근 등을 차단하는 경우의 응답(파일 시스템 퍼미션 거부, 허가되지 않은 IP 주소를 통한 엑세스의 거부 등).

404

    Not Found

    클라이언트가 요청한 리소스가 서버에 없음

500

    Internal Server Error

    서버에서 클라이언트 요청을 처리 중에 에러가 발생함

503

    Service Unavailable

    · 서버가 일시적으로 요청을 처리할 수 없음

    · 서버가 과부하 상태이거나 점검중이므로 요청을 처리할 수 없는 상태


4.3 실습예제


4.3.1 /error/error.jsp (기본적인 에러 페이지)

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

 

<% int a = Integer.parseInt(request.getParameter("num")); %>

a: <%= a %>

 

</body>

</html>


4.3.2 web.xml 에 코드 추가

<error-page>

          <error-code>404</error-code>

          <location>/error/404code.jsp</location>

</error-page>

<error-page>

          <error-code>500</error-code>

          <location>/error/500code.jsp</location>

</error-page>


4.3.3 /error/404code.jsp

<h2>요청하신 주소를 찾을 수 없습니다.</h2>

<p>

     잠시 후에 다시 한번 시도해 주시기 바랍니다.

     동일한 문제가 지속적으로 발생할 경우 고객센터로 문의하여 주십시오.

</p>


4.3.4 /error/500code.jsp

<h2>이용에 불편을 드려 죄송합니다.</h2>

<p>

     잠시 후에 다시 한번 시도해 주시기 바랍니다.

     동일한 문제가 지속적으로 발생할 경우 고객센터로 문의하여 주십시오.

</p>