[ JSP 에서 Exception 처리하기 ]
- 먼저, JSP 에선 Java 코드도 사용이 가능하므로, try catch 로 예외처리도 가능하긴 하다.
- 근데, JSP 에서는 따로 편하게 예외처리 하는 방법을 제공해준다.
1. errorPage 설정
: error 발생시 따로 처리할 페이지 설정
- 요청을 처리할 현재 JSP 파일이 exception 이 발생할 가능성이 있다면,
해당 JSP 파일의 페이지 지시자 태그에
<%@ page errorPage="errorhandle.jsp" %>
=> error 발생하면 처리 할 errorPage 를 따로 설정해둔다
( 예외없으면 그대로 실행 / 예외발생시 errorPage 이동 )
2. isErrorPage 설정
: 내가 error 처리하는 page 다!
- error 처리하기로 설정해둔 jsp 페이지에서
<%@ page isErrorPage = "true" %>
설정 해두고,
( true 설정해줘야 exception 객체 사용가능 )
exception 객체 사용해서 ( java.lang.Exception )
자바 처럼 처리해주면 된다.
<%=exception.toString()%>
: 예외 종류 + 메세지
<%=exception.getMessage()%>
: 메세지
<%exception.printStackTrace();%>
: 서버 콘솔출력용
<%=request.getRequestURI()%>
: 오류를 처리한 파일명
- JSP 페이지 지시자를 이용한 errorpage / exceiption 처리는
java 코드에 대한 오류 처리만 하는 것
( http 500번 오류 에 대한 처리 )
그럼 Http 404 등에 대한 오류처리는?
[ HTTP 프로토콜 오류 처리 ( 404 ) ]
: web.xml 에서 설정 가능!
<error-page>
<error-code> 404 </error-code>
<location> /JSP_prac/errorhandler2.jsp </location>
</error-page>
- error-code : HTTP 에러코드 번호
- location ( 컨텍스트명 이후 + ) / 파일명주소
=> 해당 error-code 발생시 => 파일url로 이동 => 처리
[ HTTP 오류코드 ]
404 - 요청 파일이 서버에 없다
=> URL 확인 /컨텍스트명 확인/URL맵핑확인
405 - method : get 방식 / post 방식이 맞지 않을 때
=> form 태그 method 방식이랑, doPost/doGet 메소드
=> form 태그 method 방식이랑, getMapping / postMapping 확인
500 - 로직오류 등 서버에서 다양한 오류.
'Back to the JSP' 카테고리의 다른 글
[ 서블릿 + JSP ] 효율적으로 섞어쓰기 (0) | 2022.08.10 |
---|---|
[JSP] action 태그 forward / include / param (0) | 2022.08.10 |
[JSP] Servlet / JSP 진행순서 (0) | 2022.08.09 |
[JSP] 구성요소들 <%@ / <%= / <%! / <%-- (0) | 2022.08.09 |
[JSP] Servlet => JSP 차이 (0) | 2022.08.09 |