공통컴포넌트 실습중
- 작성자 :
- 강*범
- 작성일 :
- 2013-05-06 11:49:58
- 조회수 :
- 1,226
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요 . 이번에 공통 컴포넌트를 이용해서 프로젝트를 하고있습니다. egovframe templates CRUD program을 이용하여 게시판을 구성을 했는데 아래와 같은 에러가 출력되었습니다. 왜 이런 에러가 나오는지를 알고 싶네요.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TestDAO': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'sqlMapClient' is defined
참고로 전에 아래와 같은 해결책이 있어서 해결을 해보았지만 결과는 마찬가지 입니다.
=============================================================================
오류의 원인은 iBatis를 호출하기 위한 sqlMapClient bean 정의를 찾지 못한 내용입니다..
공통콤퍼넌트를 적용하신 경우라면.. src/main/resources/egovframework/spring/com/context-sqlMap.xml 설정 파일이 존재하셔야 하고.. web.xml 상에 contextConfigLocation 설정 상에 위 xml 파일이 지정되어 있으신지 확인해 보시면 되실 것 같습니다..
=============================================================================
일단 위에 말대로 context-sqlmap.xml 에 설정파일 경로 및 파일 명이 올바른 지 검색했습니다.
classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml
DB type은 mysql로 맞추었고 경로를 확인 하였으며 contextConfigLocation 상 xml 지정도 하였습니다.
그래도 에러가 그대로 출력됩니다. 어떤 문제일까요?
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TestDAO': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'sqlMapClient' is defined
참고로 전에 아래와 같은 해결책이 있어서 해결을 해보았지만 결과는 마찬가지 입니다.
=============================================================================
오류의 원인은 iBatis를 호출하기 위한 sqlMapClient bean 정의를 찾지 못한 내용입니다..
공통콤퍼넌트를 적용하신 경우라면.. src/main/resources/egovframework/spring/com/context-sqlMap.xml 설정 파일이 존재하셔야 하고.. web.xml 상에 contextConfigLocation 설정 상에 위 xml 파일이 지정되어 있으신지 확인해 보시면 되실 것 같습니다..
=============================================================================
일단 위에 말대로 context-sqlmap.xml 에 설정파일 경로 및 파일 명이 올바른 지 검색했습니다.
classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml
DB type은 mysql로 맞추었고 경로를 확인 하였으며 contextConfigLocation 상 xml 지정도 하였습니다.
그래도 에러가 그대로 출력됩니다. 어떤 문제일까요?
A
안녕하세요. 강준범님.
공통컴포넌트의 경우는 context-sqlMap.xml 설정 상에 bean id sqlMapClient가 아닌 egov.sqlMapClient로 되어 있습니다.
문제는 다른 부분을 추가하시면서 'sqlMapClient' id를 찾는 부분(injection)이 추가되어 발생되 것 입니다.
이 경우는 context-sqlMap.xml에 다음과 같이 alias를 추가하시면 되실 것 같습니다.
<alias name="egov.sqlMapClient" alias="sqlMapClient" />
그럼, 즐거운 하루되십시오.
감사합니다.
공통컴포넌트의 경우는 context-sqlMap.xml 설정 상에 bean id sqlMapClient가 아닌 egov.sqlMapClient로 되어 있습니다.
문제는 다른 부분을 추가하시면서 'sqlMapClient' id를 찾는 부분(injection)이 추가되어 발생되 것 입니다.
이 경우는 context-sqlMap.xml에 다음과 같이 alias를 추가하시면 되실 것 같습니다.
<alias name="egov.sqlMapClient" alias="sqlMapClient" />
그럼, 즐거운 하루되십시오.
감사합니다.