logo

[Spring MVC] Not binding proxy bean for transaction

language-logoSpring
language-logoJava

• 레거시 시스템에서 Spring MVC 프레임워크를 사용하면서 발생한 트랜잭션 처리 문제를 해결하기 위해 프록시 객체와 일반 객체의 차이를 파악하였습니다.
• 문제 원인은 applicationContext.xml과 dispatcher-servlet.xml 파일에서 컴포넌트 스캔이 중복되어 발생한 것으로, 해결 방법으로는 각 파일에서 스캔할 컴포넌트 종류를 선택하여 제외하였습니다.
• applicationContext.xml 파일에서 @Service, @Repository 애너테이션이 붙은 컴포넌트를 포함하고, @Controller 애너테이션 컴포넌트를 제외합니다.
• 생성자 주입 로그 확인을 위해 BlogController 클래스에서 빈 객체 정보를 출력하며, 컴포넌트 스캔 시 설정이 없으면 생성자 주입이 2회 발생합니다.

thumbnail
북마크
공유하기
신고하기
8분 분량
조회수 117
profile-imageJunhyunny
일 년 전
Copyright © 2024. Codenary All Rights Reserved.