http://localhost:8080/cache-strategy/{{cacheStrategy}}/items 호출 시 NPE 에러 문의
------------------------------ 해결 방안-------------------------------
저와 비슷한 이슈가 있으신분은
이렇게 처리 부탁드립니다!
인텔리제이 설정에서
Preferences > Build, Execution, Deployment > Build Tools > Gradle에서
Build and run using : Gradle
Run tests using : Gradle
이렇게 수정 하고 다시 시도 부탁드립니다!!!
쿠케님 감사합니다 :)

안녕하세요 우선 좋은 강의 만들어주셔서 정말 감사드립니다.
GET - http://localhost:8080/cache-strategy/NONE/items/{{itemId}}
해당 API 를 호출 하게 되면
ItemController -> KukeCacheAspect -> KukeCacheKeyGenerator -> ItemNoneCacheService
대충 이런 흐름으로 가게 되는데요.
KukeCacheKeyGenerator 객체에서
for (int i = 0; i<args.length; i++) {
context.setVariable(parameterNames[i], args[i]);
}
parameterNames 객체에 NPE 에러가 발생 되고 있습니다.
코드는 강의 자료실 통해 제공해주신 코드로 실행 해보았습니다.
이 부분 어떻게 수정을 해야 할까요?
Câu trả lời 2
1
------------------------------ 해결 방안-------------------------------
저와 비슷한 이슈가 있으신분은 이렇게 처리 부탁드립니다!
인텔리제이 설정에서
Preferences > Build, Execution, Deployment > Build Tools > Gradle에서
Build and run using : Gradle
Run tests using : Gradle
이렇게 수정 하고 다시 시도 부탁드립니다!!!
쿠케님 감사합니다 :)
0
리나님, 안녕하세요!
이번에도 잘 수강해 주셔서 감사합니다.
CGLIB이 아닌 JDK Proxy(인터페이스의 파라미터 정보를 보존하지 못함)가 동작하는 것으로 보이고, 로컬 IDE 컴파일 환경에서 차이가 있는건지 싶군요..!
KukeCacheKeyGenerator.genKey 메소드에서 아래 출력 결과 공유해주실 수 있을까요?
System.out.println(joinPoint.getThis().getClass());
해결 방법으로는,
인텔리제이 Settings > Build, Execution, Deployment > Compiler > Java Compiler 메뉴에서,
Javac Options > Additional command line parameters에다가 +parameters를 추가해보시겠어요?
class 파일에 파라미터명을 보존하는 설정입니다.
위 방법이 안되면, build.gradle에 아래 설정을 추가해보시거나,
tasks.withType(JavaCompile) {
options.compilerArgs += ["-parameters"]
}
KukeCacheApplication에 @EnableAspectJAutoProxy(proxyTargetClass = true)를 추가해보시면 될 것 같습니다!
혹시 세 가지 방법 모두 안된다면 다시 말씀 부탁드립니다!
0

말씀 해주신 부분
class kuke.cache.service.strategy.none.ItemNoneCacheService$$SpringCGLIB$$0이렇게 찍혀져 나옵니다. CGLIB 프록시로 정상적으로 프록시 객체 생성 된 것이 아닌가요?

1.인텔리제이 Setting 에서 +parameters 추가

2.build.gradle 파일에 설정 추가

3.@EnableAspectJAutoProxy(proxyTargetClass = true) 추가
모두 해보았는데 동일한 NPE 에러가 발생되네요.ㅠ.ㅠ
0
Preferences > Build, Execution, Deployment > Build Tools > Gradle에서
Build and run using : Gradle
Run tests using : Gradle
혹시 이거 Gradle로 해보시겠어요?
0
안녕하세요 선생님! 네 해결 했습니다. 정확히
Build and run using : Gradle
Run tests using : Gradle
이렇게 설정시 왜 해결 되었는지 찾아봐야 겠지만 ㅠㅠ
정말 감사합니다.
프롬프트, 스킬, sub-agent
0
16
0
라이브 운영중인 환경의 테이블에 인덱스 추가시 고려사항
0
18
2
도메인 모델에서 관계와 규칙을 구분하는 방법
0
26
2
16 강의 메세지 retryCount의 의도
0
12
1
JPA Repository 질문이 있습니다!
1
28
2
페이지네이션 처리를 쿼리에서 하는 방식 질문
1
30
1
DDD 는 마이바티스와 잘 맞지 않는건가요?
0
38
1
스프링부트 버전 문의드립니다.
0
28
1
Json 요청 처리
1
26
2
Redlock 알고리즘 관해 궁금한게 있습니다!
0
29
2
비동기 스레드풀 분리 이유와 Virtual Thread 전환 시 고려사항
0
26
1
좋아요/조회수 카운팅 병목현상에 대해서 궁금한점이 있습니다.
0
26
2
gRPC 실무에서 질문
0
30
2
로그아웃-logout()-2 강에서 겟방식 로그아웃 호출 후 화면이동 질문입니다.
0
21
2
스타터패키지 받을 수 있는 기회가 있을까요?
0
31
1
Build 관련 문제 (테스트 관련 문제)
0
30
1
job, step execution 관련 질문 드립니다.
0
25
2
다양한 관점의 코드 경험을 위해 개선하지 않은 코드
1
41
1
23강 5:38 부분 질문 있습니다!
0
41
1
23강 17초 부분 질문있습니다~
0
48
2
Split 전략 강의 중 질문 있어요
0
55
2
질문이 있습니다!!
0
70
2
RateLimitTest시 저는 2초로 해야 정상으로 나오는데
0
69
2
섹션3에 22번째 강의에서 에러발생합니다..
0
114
4

