I get this error when call my GET request (modes-calcul) and I don't understand why... My dependency injection is correct?
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.margaux.margaux.repository.ModeCalculDAO' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}
ModeCalculController :
@Slf4j
@Transactional
@RestController
@RequestMapping("modes-calcul")
public class ModeCalculController {
private ModeCalculService modeCalculService;
@Autowired
public ModeCalculController(ModeCalculService modeCalculService) {
this.modeCalculService = modeCalculService;
}
@GetMapping()
public ResponseEntity<List<ModeCalculDTO>> getModesCalcul() {
return new ResponseEntity<List<ModeCalculDTO>>(modeCalculService.getModesCalcul(), HttpStatus.OK);
}
}
ModeCalculServiceImpl :
@Slf4j
@Service
@Transactional
public class ModeCalculServiceImpl implements ModeCalculService {
private ModeCalculDAO modeCalculDAO;
@Autowired
@Lazy
public ModeCalculImpl(ModeCalculDAO modeCalculDAO){
this.modeCalculDAO = modeCalculDAO;
}
@Override
public List<ModeCalculDTO> getModesCalcul() {
ModelMapper mapper = new ModelMapper();
List<ModeCalcul> modesCalcul = modeCalculDAO.findAll();
return modesCalcul
.stream()
.map(modeCalcul -> mapper.map(modeCalcul, ModeCalculDTO.class))
.collect(Collectors.toList());
}
}
ModeCalculDAO :
@Repository
public interface ModeCalculDAO extends JpaRepository<ModeCalcul, Long> {
}
Thanks for your help..