728x90
egovframework:시스템로그조회 [eGovFrame]
시스템로그조회는 시스템 사용시 발생하는 각종 로그를 검색, 조회하는 기능을 제공한다. 시스템로그조회는 시스템로그의 등록, 조회, 목록, 삭제, 요약의 기능을 수반한다. ① 시스템로그등록
www.egovframe.go.kr
egov 공통 컴포넌트인 시스템 로그 조회를 적용하다 아래와 같은 에러 메시지가 출력되었다.
org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'service명'
is expected to be of type 'egovframework.pcr.main.web.service.service명'
but was actually of type 'com.sun.proxy.$Proxy51'
원인 : spring aop 버전이 낮거나, proxy-target-class가 설정되어있지 않아서.
여기서 Proxy란 자신이 클라이언트가 사용하려고 하는 실제 대상인 것처럼 위장해서 클라이언트의 요청을 받아주는 것을 대리자, 대리인과 같은 역할을 하는 객체의 의미한다.
해결방법 1.
spring-core 4.0 버전부터는 cglib가 사라졌다. pom.xml에 spring-aop version을 확인해보고 vesrion up을 시켜준다.

해결방법 2.
context-syslogaop.xml 파일에 proxy-target-class="true" 추가 또는 controller에 @EnableAspectJAutoProxy 추가
<aop:aspectj-autoproxy proxy-target-class="true"/>
@EnableAspectJAutoProxy

'Spring' 카테고리의 다른 글
| [JAVA] java.lang.Integer cannot be cast to java.lang.String 형변환 오류 해결하기 (0) | 2021.10.29 |
|---|---|
| [EgovFramework] Spring Interceptor session AJAX 처리 (0) | 2021.10.18 |
| 로그인 양방향 암호화(RSA) 단방향 암호화(SHA 256) 사용하기 (0) | 2021.09.03 |
| [Spring Error] Can not find the tag library descriptor for (0) | 2021.08.31 |
| [JAVA] Lamda 표현식 예제 (0) | 2021.08.27 |