에러처리 Parameter 1 of constructor in {1} required a bean of type {1} that could not be found.

dropKick·2020년 10월 3일
0

문제

@RequiredArgsConstructor
@RestController
@RequestMapping("api/v1")
public class UserApiController {
    private final UserService userService;
    private final UserDto userdto;

컨트롤러에서 Dto를 별도의 Dto 패키지로 뺀 뒤에 로직 구현해서 돌리니 에러 발생

Parameter 1 of constructor in {1} required a bean of type {1} that could not be found.

대충 파라미터 bean 주입과 타입에 대한 문제라는 걸 알겠는데 뭔지 모르겠어서 검색

해결

import dto.users.UserDto;

@RequiredArgsConstructor
@RestController
@RequestMapping("api/v1")
public class UserApiController {
    private final UserService userService;

알고보니 Controller로 등록된 상태에서는 Service를 주입받아야 한다.
그런데 Dto @Service가 아니니 파라미터로 주입될 빈 타입을 찾을 수 없다는 에러가 발생
지우고 별도로 Dto를 가져오니 해결

0개의 댓글