문제상황
‘jsp로 회원 관리 웹 애플리케이션 만들기’ 강의를 들으면서 실습하고 있는데,
위와 같이 new-form.jsp 파일을 spring이 못 찾는 문제가 발생하였다.
관련해서 <jsp 404 에러 해결 gradle> 요렇게 구글링 해봤는데, 3시간째 해결이 안된다… ㅠㅠ
같은 상황인 사람들의 글을 봤는데, 명확하게 해결하는 방법을 찾을 수 없었다.
해결과정
https://velog.io/@0woy_/SpringBoot-6-SpringBoot-jsp-파일-안-띄워짐
controller를 설치하지 않아서 그런 문제라는데.. 왜 김영한 강의에서는 controller 설치 없이도 작동이 되는거지..?
https://backendcode.tistory.com/121
Spring Boot는 JSP 템플릿 엔진을 기본적으로 지원하지 않기에 아래와 같은 정보를 application.properties 혹은 application.yml에 설정해서 Spring Boot에게 JSP 뷰의 경로를 알려줘야 한다.
jsp 뷰의 경로를 알려주기 위해 일단 application.properties 파일에
spring.mvc.view.prefix=/jsp/members/
spring.mvc.view.suffix=.jsp
위와 같이 설정하고,
그런데,
prefix, suffix는 파일 확장자명이며, 밑에 Controller(컨트롤러)에서 return 값을 반환할 때 연결되게 한다.
음.. 일단 controller로 불러오는 형태가 아니라 index.html 에서 연결된 a태그의 기능으로 url이 바뀌기 때문에 필요없는 것 같은데..
일단 보류
하… 미친
프로젝트 폴더 구성상 원래, jsp.members 폴더 내에 위 jsp 파일들이 있었는데,
나는 이게 compact/middlepackages 화 되어 있는 줄 알고,
옳게 폴더 구조를 사용했다 생각했는데, 아니였다.
폴더 내 폴더를 생성할때,
[외부폴더이름].[내부폴더이름] 으로 생성하는 습관때문에 일어난 일인데..
분명 compact/middlepackages 이걸 해제했는데, main/java 폴더 내에서는 이게 해제된게 눈으로 보이게끔 바뀌었는데,
jsp.members 폴더는 그대로였던걸 꼼꼼하게 보지 않았다.
결과적으로 성공…
그리고 얻은 ‘스프링부트 jsp 404’ 검색어에 대한 보라색으로 바뀐 결과들..
해결되서 기쁘긴 한데,
버전 문제, jsp 는 ultimate 이 아닌 intellij에서 지원 x 글들, 인프런의 다른 사람이 겪은 똑같은 문제에서 그 분의 프로젝트와 내 프로젝트 대조 등 온갖 뻘짓을 하고난 후, 원인이
폴더구조 때문이라는게 좀 힘 빠진다.
'구름톤 딥다이브 풀스택 11회차' 카테고리의 다른 글
[구름톤 딥다이브 1차 스터디 -2회] 알고리즘 풀이 + 자바 기본 cs 워밍업 면접 (4) | 2024.09.14 |
---|---|
[구름톤 딥다이브 1차 스터디 -1회] 알고리즘 풀이 + 자바 기본 cs 워밍업 면접 (0) | 2024.09.06 |