Error Page 를 TilesView로 레이아웃 적용시키기2

2016. 6. 15. 17:35카테고리 없음

이전 포스팅 방식으로 구현해보니 문제가 발생했다.

DB를 갔다올때마다 404Error를 감지해서 Error Page를 반복적으로 포워딩하느라 리소스가 낭비되고 있었던 것

왜 404가 발생하는지를 알아야하는데 ㅜ.ㅜ. 시간부족으로 제끼고 error Page 호출 방식을 바꾸도록 한다.


1. 아래와 같이 location을 설정한다. 


<error-page>

 <error-code>400</error-code>

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>

 

<error-page>

 <error-code>401</error-code>

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>

 

<error-page>

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

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>

  <error-page>

 <error-code>405</error-code>

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>

<error-page>

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

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>

 

<error-page>

 <error-code>503</error-code>

 <location>/WEB-INF/jsp/error/layout-error.jsp</location>

</error-page>


2. layout-error.jsp를 생성한다.


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>


<%@taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>

<tiles:insertDefinition name="error" />    

에러가 발생할 경우 layout-error.jsp를 호출하고 이 jsp 파일에서 TilesView에 name이라는 이름을 보내면...


3. 이렇게 name을 받아서 error.jsp를 호출한다.


<!-- Error 페이지 -->

<definition name="error" extends="errorLayout">

<put-attribute name="contents"       value="/WEB-INF/jsp/error.jsp" />

</definition>


<