메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

공통컴포넌트 실습중
  • 작성자

    강*범

  • 작성일

    2013-05-06 11:49:58

  • 조회수

    1,517

  • 구분

    공통컴포넌트

  • 진행상태

    완료

질문

안녕하세요 . 이번에 공통 컴포넌트를 이용해서 프로젝트를 하고있습니다. 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 지정도 하였습니다.
그래도 에러가 그대로 출력됩니다. 어떤 문제일까요?

답변

안녕하세요. 강준범님.

공통컴포넌트의 경우는 context-sqlMap.xml 설정 상에 bean id sqlMapClient가 아닌 egov.sqlMapClient로 되어 있습니다.

문제는 다른 부분을 추가하시면서 'sqlMapClient' id를 찾는 부분(injection)이 추가되어 발생되 것 입니다.

이 경우는 context-sqlMap.xml에 다음과 같이 alias를 추가하시면 되실 것 같습니다.

<alias name="egov.sqlMapClient" alias="sqlMapClient" />

그럼, 즐거운 하루되십시오.
감사합니다.

이 페이지의 구성

묻고 답하기