jsp)예외처리

leeeexxxx·2022년 5월 24일
0

JSP

목록 보기
7/9
post-thumbnail

예외 처리(Exception Handling) 혹은 오류 처리(Trouble Shooting)란 실행 흐름상 오류가 발생했을 때 오류를 그대로 실행시키지 않고 오류에 대응하는 방법을 제시하는 개념이나 하드웨어 구조를 의미한다. 일반적으로 프로그래밍에서 프로그램이 실행 중 특정 문제가 발생했을 때 다른 처리 방식으로 흐름을 옮기는 개념으로 사용한다.

오류 원인

  • 잘못된 메모리 장치 접근
  • 불가능한 연산
  • 자료형의 불일치
  • 비논리적인 알고리즘
  • 컴퓨터 하드웨어의 손상
  • 운영체제 손상
  • 존재하지 않는 파일 호출

예외 처리가 되어있지 않다면 서버에서 기본적으로 제공되는 에러페이지가 나온다 .
-> 사용자들에게 보기 불편해 에러페이지를 따로 지정한다.

에러페이지 처리방법

✔️page지시자의 errorPage 속성 사용

가장 간단한 방법
name 파라미터 값이 전송되지않기 때문에 nullpointerException이 발생되며
에러페이지 처리를 하지 않기 때문에 HTTP상태 500내부 서버 오류가 발생한다.


예외처리 페이지를 만들지 않은 기본페이지.

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

errorPage=" ...jsp"추가해준다.

예외를 처리할 페이지 작성

기본오류페이지에서 -> 내가 작성한 오류페이지로 바뀐다.

web.xml에서 예외처리하기

✔️error-code엘리먼트값 설정

web.xml 이란 tomcat에서 기본적으로 읽는 파일들이다.
jsp페이지에서 빈번하게 발생하는 에러 번호별로 에러 처리 페이지를 설정하는 방법이다.
서버 페이지 코드에서 오류는 대부분 500번 오류이므로 오류번호에 대해서 에러페이지를 지정한다.

createError page에서 errorpage를 삭제 해준다.

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

  
  <error-page>
  	<error-code>500</error-code> //500오류가 발생하면
  	<location>/500.jsp</location>  //500jsp파일을 열어준다.
  </error-page>
  
  <error-page>
  	<error-code>404</error-code> //404오류가 발생하면 
  	<location>/error404.jsp</location> //error404 file을 찾아서 보여준다. 
  </error-page>
  

✔️exception-type엘리먼트값 설정

  <error-page>
	<exception-type>java.lang.NullPointerException</exception-type>
	<location>/null.jsp</location>  
  </error-page>

nullpointerException이 발생하면 null.jsp페이지에서 에러를 우선으로 처리하며 그외의 서버 오류가 발생하면 500.jsp 나 404.jsp네서 에러를 처리한다.

우선순위

page지시자 errorPage 속성값 지정
->web.xml페이지의 exception-type 엘리먼트값 설정
-> web.xml페이지의 error-code엘리먼트값 설정

우선순위가 높은순서대로 먼저 처리된다.

0개의 댓글