컴퓨터/Spring
Spring boot url root path
利路
2020. 8. 15. 09:33
반응형
spring boot 와 jsp 사용중이다.
서버 초기 세팅 중 GetMapping("/") return "/index"; 로 index 페이지 가 잘 떠서 웹페이지 띄우는 구성은 끝났구나 했다.
그런데 GetMapping("/member/list") return "/member/list"; 로 페이지를 띄우려고해도
[/member/WEB-INF/jsp/list.jsp] ?????? 라는 404 에러페이지가 뜨면서 접속이 안되었다.
원인
application.properties에서
#spring mvc 설정
spring.mvc.view.prefix=WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
여기에 문제가 있다. WEB-INF 앞에 / 를 안해주어 저런 현상이 발생했다.
여기서 / 를 붙이지 않으니 컨트롤러의 GetMapping의 /member이 먼저 적용되고, prefix설정이 적용되고 컨트롤러의 return "member/list" 가 적용된다.
#spring mvc 설정
spring.mvc.view.prefix=WEB-INF/jsp/
일 경우
@GetMapping("/member/list")
public String memberList(){
return "common/user/getlist";
}
// mapping되는 url
// /member/WEB-INF/jsp/common/user/getlist.jsp
리턴값을 그대로 매핑하려면 반드시
spring.mvc.view.prefix=/WEB-INF/jsp/
prefix의 시작을 / 부터 해주자!
반응형