-
[Spring boot] SpringBootApplication annotation + no explicit mapping for /error개발/Web 2020. 9. 11. 14:27
내부 톰캣 서버를 실행하는 진입점이라고 할 수 있는 @SpringBootApplication를 작성한 클래스는 패키지의 최상단 혹은 동일한 레벨에 위치해야 합니다. @SpringBootApplication은 여러가지 어노테이션 기능을 합친 어노테이션입니다. 그 중 하나가 @ComponentScan입니다. 이 어노테이션의 기능은 현재 위치에서 시작해 서브 패키지를 훑으면서 클래스를 스캔합니다. 엉뚱한 패키지에 작성하면 컨트롤러를 못 찾기 때문에 404 에러가 발생하죠.
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Fri Sep 11 14:20:17 KST 2020
There was an unexpected error (type=Not Found, status=404).
No message available
패키지의 최상단이라는 의미는 다음과 같습니다. 컨트롤러 클래스가 com.web.controller 패키지에 있다면 메인 메소드가 있는 클래스는 com.web이나 com 패키지에 있어야 합니다. com.web.project에 있다거나 com.wweb에 있으면 안 됩니다. 같은 계층 구조 안에 있어야 합니다.
'개발 > Web' 카테고리의 다른 글
[Spring Framework] @RequestBody, @RequestParam (0) 2020.10.16 [Spring Security] static resource와 로그인 성공 후 error page에 관해 (0) 2020.10.08 [Spring boot] TilesConfig + tiles.xml (0) 2020.09.10 [Spring boot] JSP view resolver + web socket + dev tools (0) 2020.09.10 [Libraray] RXTX for Java (0) 2020.08.28