자바 화이트 라벨 에러
자바에서 작업을 하던 중 화이트 라벨 !?!!?
테스트 코드도 다 짜두었고 심지어 테스트도 다 통과한 뒤 라 더 당황스러웠다...
답이 궁금하신분은 마지막만 읽으세요
오류를 읽어보자
this application has no explicit mapping for 이라는데... 아니 맵핑을 분명 정확한 주소로 설정 해주었는데 ...라고 하며
시도 1 맵 주소 바꾸기 반환 해주는 DTO 다시 다 바꾸어보기
@GetMapping("products")
의 주소를
@RequestMapping("products")
로 바꾸고 맵핑 뒤 주소를 지워보았다. ( 아닐건 알지만 건드릴 부분이 없었다..)
해결책아님
후자인 DTO는 건드렸다가 더 헷갈리기만 하고 시간은 엄청 썼다.
시도 2 블로그 찾아보기
블로그를 쭈욱 둘러보면 거의 다 제시하는 해결책
1. 파일의 위치를 맞춰줘라
즉 컨트롤러는 컨트롤러 패키지에 나머지 서비스(어플리케이션) 레포지토리등은 컨트롤러 패키지와 동일 레벨에 위치한 서비스 패키지, 레포지토리 패키지 안에 있으란 말이다. ( 너무 당연한 말 ...)
2.index.html 파일 만들어주기
1. localhost:8080 으로 연결 시 기본값인 index.html이 없다
스프링 구동 시 처음에는 무조건 index.html 을 찾게 설정이 되어있기 때문에 index.html을 만들어두지 않으면 이런 에러가 난다.
해결방법은
src > main > resources > static
폴더 안에 우클릭 후 new > HTML File 을 눌러
index.html 파일을 만들어주면 된다
라고 NO 사실 나는 리소스에서 포트설정을 직접 8000으로 바꾸어주기 때문에 무관해서 시도도 안했다.
자 다시 오류 코드를 읽어보자 자.세.히.
No default constructor for entity
엔터티의 .. 생성자가 없다.... 엔터티의 생성자 없이 테스트 코드가 모두 통과되는지 잊고 있었다.
원래 습관처럼 빈 생성자와 게터를 모두 만들어주는데 ( 가장 흔히 까먹고 찾기 어려운 오류라서)
어느 순간 너무 무분별하게 생성자와 게터를 만들고 있는 것 같아 자제했더니 또 하나 배웠다.
배운 것
엔터티는 무조건 빈 생성자 만들어주기!
'개발 관련 학습 및 문제해결' 카테고리의 다른 글
자바 스프링 페이지네이션 구현 풀스택[20221010 TIL] (0) | 2022.10.10 |
---|---|
리액트에서 이미지 가져오기[20221005 TIL] (0) | 2022.10.05 |
메가테라 레벨테스트2 1주차 중간 회고[20221004 TIL] (0) | 2022.10.04 |
heroku 배포시 Unable to access jarfile 오류 문제[20221001 til] (0) | 2022.10.01 |
No Routes Matched Location "/" solution 문제해결[20220930 TIL] (0) | 2022.09.30 |
댓글