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

도오커님의 프로필 이미지
도오커

작성한 질문수

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

ErrorDecoder를 이용한 예외 처리

디버깅모드 에러

작성

·

36

0

ErrorDecoder를 이용한 예외 처리
강의 15:00 에

order_service:
url: http://ORDER-SERVICE/order-service/%s/orders

exception:

order_is_emptyda: User's order is emptyimda2

이렇게 설정하고
http://127.0.0.1:8000/user-service/users/[userid]
돌리니까
디버깅모드에서 getProperty가 Invalid expression : ) 로 표시됩니다 resume 하면 제대로 postman에 적용되긴합니다. 거의 똑같이 썻는데 왜 저는 저렇게 디버그 모드에서 invalid expression이라고 떠서 확인을 못하게 뜰까요 스프링부트3.3 jdk 17입니다 intellij

답변 2

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

말씀하신 환경 Spring Boot 3.3 + Spring Cloud 2023.0.2 + JDK 17 에서 실습해 보았는데, 해당 부분에 대한 이슈는 없었습니다.

order_service.exception.order_is_emptyda 가 선언 된 설정 파일 (application.yml 또는 config-service 위치 등)과 작업하신 ErrorDecoder 예제를 공유해 주시면, 원인을 찾는데 도움이 될 것 같습니다.

Invaild expression이라는 에러가 발생한 것으로 봐서는, order_service.exception.order_is_emptyda 값을 제대로 가져오지 못하는 경우라고 생각되는데, 실제 작업하신 내용을 공유해 주시면 제쪽에서도 다시한번 실행해 보도록 하겠습니다.

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.
kbcang1님, 디버깅 모드에서 발생하는 Invalid expression 오류에 대한 문제를 해결하기 위해 다음과 같은 사항을 점검해보세요:

  1. 버전 호환성: 사용 중인 JDK 17과 Spring Boot 3.3의 호환성을 확인하세요. 공식 문서나 릴리즈 노트를 통해 특정 버전에서 발생하는 호환성 문제나 알려진 이슈가 있는지 확인하는 것도 좋습니다.

  2. IntelliJ 셋팅: IntelliJ IDEA의 설정에서 프로젝트에 사용된 JDK 버전과 맞는지 확인해보세요. 특히, Preferences -> Build, Execution, Deployment -> Build Tools -> Maven 혹은 Gradle에서 JDK 버전들이 일치하게 설정되어 있는지 확인하세요.

  3. Breakpoints와 Watch Expressions: 디버깅 중인 코드에서 설정한 breakpoint와 ‘Watch Expressions’을 확인하세요. 잘못된 문법이나 지원되지 않는 표현식이 거기에 포함되어 있을 수 있습니다.

  4. Spring Boot 및 라이브러리 업데이트: 스프링 부트와 관련된 라이브러리를 최신 버전으로 업데이트 해보세요. 이미 해결된 버그가 있을 가능성도 있습니다.

  5. 로깅 및 컨디션 점검: ConditionEvaluationReport를 사용하여 자동 설정된 조건들을 점검하고, 디버그 모드를 활성화하여(--debug) 추가적인 로그 정보를 통해 문제를 파악할 수 있습니다.

  6. 이클립스 IDE와의 비교: 가능하다면, 같은 프로젝트를 Eclipse IDE에서도 테스트하여 같은 문제가 나타나는지 비교해보는 것도 좋습니다.

위 방법들을 시도해 보시고 문제가 해결되지 않는다면, 오류 메시지 전체와 함께 추가적인 코드 및 설정 정보를 제공해주시면 더 구체적인 도움을 드릴 수 있을 것 같습니다.
관련 문서 확인 링크도 참고하시기 바랍니다.

도오커님의 프로필 이미지
도오커

작성한 질문수

질문하기