인프런 커뮤니티 질문&답변

김지수님의 프로필 이미지
김지수

작성한 질문수

스프링 핵심 원리 - 기본편

@Autowired 필드 명, @Qualifier, @Primary

전체 테스트 오류

작성

·

628

0

그림과 같이 저는 여기저기서 오류가 나는데, 해결을 못하고 있습니다..

rateDiscountPolicy로 바꿔서 하니 안되는데, 왜이런지 모르겠어요.스크린샷 2023-03-31 오전 11.01.12.png스크린샷 2023-03-31 오전 11.01.28.png스크린샷 2023-03-31 오전 11.02.36.png

답변 1

김지수님의 프로필 이미지
김지수
질문자

해당 두 링크 보았는데 해당 링크에서 하라고 한건 다 되어있어요ㅠㅠ

AllBeanTest 돌린 결과 아래와 같은 출력과 오류 메시지가 나옵니다.

discountCode = fixDiscoountPolicy

discountPolicy = null

java.lang.NullPointerException: Cannot invoke "hello.core.discount.DiscountPolicy.discount(hello.core.member.Member, int)" because "discountPolicy" is null

 AutoAppConfigTEst 에서 basicScan 은 아래와 같은 오류가 나옵니다.

org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'hello.core.order.OrderServiceImpl' available

 

프로젝트 코드를 확인해봐야 알 것 같습니다.

전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.

구글 드라이브 업로드 방법 링크

주의: 업로드시 권한 문제 꼭 확인해주세요


감사합니다.

김지수님의 프로필 이미지
김지수
질문자

https://drive.google.com/file/d/1kx11a9Tx1HEpqy_cmTV1IlBxLM9A_7nE/view?usp=sharing

 

드라이브에 업로드 해놓았습니다.

전체 코드 돌렸을때 해당 오류들이 왜나는지 알려주시면 감사하겠습니다

프로젝트 코드 확인해보았습니다.

@Configuration
@ComponentScan( //이건 빼고, ..
        basePackages = "hello.core.member",
        excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class)
)
public class AutoAppConfig {

}

AutoAppConfig에서 basePacakges 를 hello.core.member로 지정하여 order를 스캔하지 못하고 있네요 ^^ 해당 옵션을 제거하고 확인해보시겠어요?

 

김지수님의 프로필 이미지
김지수
질문자

member 지우고 해보았는데 AllBeanTest 돌린 결과 아래와 같은 출력과 오류 메시지가 나옵니다. 이오류는 어떻게해결해야 하나요?

java.lang.NullPointerException: Cannot invoke "hello.core.discount.DiscountPolicy.discount(hello.core.member.Member, int)" because "discountPolicy" is null

 

김지수님의 프로필 이미지
김지수

작성한 질문수

질문하기