# 시작하며
현장실습에서 스프링 부트를 이용해 프로젝트를 진행했고(추후 하나씩 과정들을 업로드할 예정) 배포했을 시 타임리프 관련된 에러가 생겼다.
# 발단 및 해결
template might not exist or might not be accessible by any of the configured Template Resolvers
template might not exist or might not be accessible by any of the configured Template Resolvers
분명 개발 단계에서는 정상 작동 했기 때문에 배포시의 문제가 확실함을 느꼈다. 일단 첫번째로는 application.properties에 있는 타임리프 관련 속성들이 잘 적용 됐는지 확인했다.
# thymeleaf
spring.thymeleaf.check-template-location=true
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
다음과 같이 classpath의 속성이 잘 적용 된 것을 볼 수 있다.
# 시도
일단 properties가 잘 적용 됐는지 확인해봤다. 지우기도하고 경로도 바꿔가면서 일단 이게 잘 적용 됐는지 확인했다.
# 해결
일단 index를 찾지 못했고 에러가 나는 부분은 html파일의
<head th:replace="/fragments/header.html :: fragment-header">
이번에는 맨앞 슬러시를 제거해줬다.
<head th:replace="fragments/header.html :: fragment-header">
이렇게 해주니 잘 해결 된 것을 알 수 있었다.
# 참고
'• 개발 > Spring boot' 카테고리의 다른 글
[SpringBoot] Amazon Linux 2 AMI JDK11 설치 및 타임존 설정하기 (0) | 2023.08.08 |
---|---|
[SpringBoot&트러블슈팅] ddl-auto를 validate로 변경했을때 missing table 에러 해결하기 (0) | 2023.08.01 |
[SpringBoot&트러블슈팅] 연관관계 편의 메소드에서 @Builder를 사용할때 발생하는 NPE (0) | 2023.07.06 |
[트러블슈팅] 타임리프에서 소수점 반올림 하는 방법 (0) | 2023.05.20 |
[트러블슈팅] Github Action으로 스프링부트 CI/CD 적용중 생기는 경로 이슈 (0) | 2023.05.05 |