본문으로 바로가기

15.예외처리

category 프로그래밍/jsp 2017. 10. 24. 00:55

예외 페이지의 필요성

 

 

JAVA언어에서 아마도 예외처리에 대해서 사전 학습을 했을 것 입니다. JSP, Servlet에서도 예외가 발생 할 수 있습니다.

예외적인 상황이 발생했을 경우 웹컨테이너(톰캣)에서 제공되는 기본적인 예외 페이지가 보여 진다면, 사용자로 하여금 뭔가 불쾌한 느낌이 들면서, 다시는 해당 사이트에 접속하려 들지 않을 것 입니다. 따라서 약간은 다소 딱딱한 에러 페이지를 보다 친근한 느낌이 느껴지는 페이지로 유도 할 수 있습니다.

 



예외를 발생시키는 페이지


page지시자를 이용한 예외 처리                                                        
<%@ page errorPage= "errorPage.jsp"%>  // 예외가 발생되었을때 페이지 지시자를 통해     errorPage.jsp로 넘어감                   


<%


 int i = 40/0; ---->//0으로 나누었기 때문에 예외가 발생됨


%>




errorPage.jsp(예외 페이지)

 
            <%@ page isErrorPage = "true"%>   이 페이지는 예외가 발생되었을 때 보여주는 페이지이므로 
 is에러페이지를 true해야함 기본값은 false

             <% response.setStatus(200); %>     연산잘못됨이 출력되는것을 방지하기 위함                                                                                        

페이지에 status값이 있는데 500은 연산이 잘못되었을때 나타난다.

                                    200은 정상적으로 완료되어진 페이지를 나타낸다.

                                     서버에서 이렇게 안해주면 500으로 되는경우가 있다.      

       

                                                                              

     <%= exception.getMessage() %>    exception.객체를 사용할수 있게 된다.   page isErrorPage가 false이면 exception객체를 사용할 수 없다.

    



 



 

web.xml파일을 이용한 예외 처리

 

<error-page>

 <error-code>404</error-code>  404웹페이지를 찾을수 없다 

 <location>/error404.jsp</location> 에러 발생시 error404.jsp페이지로 이동

<error-page>

 

<error-page>

 <error-code>500<error-code>  연산을 잘못했다

 <location>/error500.jsp</location> 에러 발생시 error500.jsp페이지로 이동

 

이때 페이지 지시자 사용하면 안됨

'프로그래밍 > jsp' 카테고리의 다른 글

데이터베이스 -1  (1199) 2017.10.26
16.자바 빈  (1200) 2017.10.24
14.세션  (1548) 2017.10.19
13.쿠키  (2622) 2017.10.18
12.액션태그(forward, include, param 태그 살펴보기)  (1209) 2017.10.03