SpringBoot 커스텀 에러페이지 설정 방법
SpringBoot 기본 에러페이지
잘못된 URL 호출 시 위와 같은 404 에러페이지가 표출됩니다.
사용자가 보기에 미관상 좋지 않으므로, 커스텀 에러페이지로 변경하면 좋습니다.
SpringBoot 커스텀 에러페이지 설정
커스텀 에러페이지 예시
application.properties 설정
server.error.path=/error
에러 발생 시 요청할 URL을 설정합니다. (기본값 /error 그대로 사용하면 설정하지 않아도 됩니다.)
CustomErrorController 생성
package com.chunjae.archive_cms.common.error;
import org.springframework.boot.web.servlet.error.ErrorController;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import javax.servlet.http.HttpServletResponse;
@Controller
public class CustomErrorController implements ErrorController {
@GetMapping("/error")
public String handleError(HttpServletResponse response, Model model) throws Exception {
int statusCode = response.getStatus();
model.addAttribute("statusCode", statusCode);
return "error/error";
}
}
ErrorController를 상속하는 커스텀 에러 컨트롤러를 구현합니다.
error.jsp 예시
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="ko" style="overflow:hidden;">
<jsp:include page="../common/layout/simpleHeader.jsp"/>
<body>
<div class="wrap h100">
<div class="container">
<div class="inner">
<div class="error-cnt">
<img src="../images/admin/error_img.png" alt="">
<span class="tit">요청하신 페이지를 찾을 수 없습니다.</span>
<span class="txt">요청하신 페이지가 사라졌거나 잘못된 경로로 접근하여<br>일시적으로 사용할 수 없습니다.</span>
<span class="txt">입력하신 페이지 정보를 한번 더 확인해주길 바랍니다.</span>
<a href="javascript:history.back();" class="btn">이전페이지</a>
</div>
</div>
</div>
</div>
</body>
</html>
error 폴더 안에 error.jsp를 생성하면 적용됩니다.
Leave a comment