MVC test 3
- 작성자 :
- 황*연
- 작성일 :
- 2017-01-20 15:00:10
- 조회수 :
- 1,162
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
3번째 질문입니다.
지난 과정을 정리합니다.
1. 설정가이드 : http://jdm.kr/blog/165
2. 전자정부에 맞는 pom 설정
3. 컴파일 성공
4. 실행시 Failed to load ApplicationContext 가 발생 -> 해결하려는 과제
<상황1>
톰캣서버에서는 정상적으로 아래처럼. 설정을 로드하고 있습니다. 물론 실행도 잘 되고 있습니다.
[org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loaded 38 bean definitions from location pattern [/WEB-INF/config/egovframework/springmvc/egov-com-*.xml]
<상황2>
하지만, 테스트 파일을 수행하면 아래의 에러가 발생합니다.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'EgovFileMngUtil': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'egovFileIdGnrService' is defined
<상황3>
또한, was 의 로그를 보면 아래처럼 RequestMapping 가 제대로 되고 있습니다. 하지만, 테스트 파일 실행은 아예 이 부분이 없습니다.
[org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/**/app/**//findListCommonCode.do],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.util.Map app.example.CommonCodeController.findListCommonCode(java.util.Map)
< 예상되는 잘못된 부분?>
아래 부분의 설정이 잘 못 된 것 같은데, 적합한 설정을 알려주시면 좋겠습니다.
@ContextConfiguration(locations ="file:src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml")
<참고>
전자정부의 공통기능 중에서 게시판을 다운로드 하여 설치해 놓은 상태이며 , 위의 에러가 나는 빈에 대한 설정은
src/main/resource 하위에 존재하고 있음을 확인했습니다.. (여기에는 설정파일이 다수 존재 합니다.)
만약, 이 위치에 대한 설정도 해줘야 한다면 구체적인 방법에 대한 가이드를 부탁드립니다.
지난 과정을 정리합니다.
1. 설정가이드 : http://jdm.kr/blog/165
2. 전자정부에 맞는 pom 설정
3. 컴파일 성공
4. 실행시 Failed to load ApplicationContext 가 발생 -> 해결하려는 과제
<상황1>
톰캣서버에서는 정상적으로 아래처럼. 설정을 로드하고 있습니다. 물론 실행도 잘 되고 있습니다.
[org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loaded 38 bean definitions from location pattern [/WEB-INF/config/egovframework/springmvc/egov-com-*.xml]
<상황2>
하지만, 테스트 파일을 수행하면 아래의 에러가 발생합니다.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'EgovFileMngUtil': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'egovFileIdGnrService' is defined
<상황3>
또한, was 의 로그를 보면 아래처럼 RequestMapping 가 제대로 되고 있습니다. 하지만, 테스트 파일 실행은 아예 이 부분이 없습니다.
[org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/**/app/**//findListCommonCode.do],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.util.Map app.example.CommonCodeController.findListCommonCode(java.util.Map)
< 예상되는 잘못된 부분?>
아래 부분의 설정이 잘 못 된 것 같은데, 적합한 설정을 알려주시면 좋겠습니다.
@ContextConfiguration(locations ="file:src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml")
<참고>
전자정부의 공통기능 중에서 게시판을 다운로드 하여 설치해 놓은 상태이며 , 위의 에러가 나는 빈에 대한 설정은
src/main/resource 하위에 존재하고 있음을 확인했습니다.. (여기에는 설정파일이 다수 존재 합니다.)
만약, 이 위치에 대한 설정도 해줘야 한다면 구체적인 방법에 대한 가이드를 부탁드립니다.
A
안녕하세요.
위 사항은 MockMVC나 JUnit을 사용한 테스트 시 @ContextConfiguration에서 해당 xml이 모든 설정이 되지 않아 나오는 사항으로 예상됩니다.
@ContextConfiguration(locations ="file:src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-*.xml",
"file:src/main/resource/모든 하위의 빈 설정 xml") 부분에 모든 빈설정 xml위치를 기입하여 주시고 테스트를 해보시기 바랍니다.
감사합니다.
위 사항은 MockMVC나 JUnit을 사용한 테스트 시 @ContextConfiguration에서 해당 xml이 모든 설정이 되지 않아 나오는 사항으로 예상됩니다.
@ContextConfiguration(locations ="file:src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-*.xml",
"file:src/main/resource/모든 하위의 빈 설정 xml") 부분에 모든 빈설정 xml위치를 기입하여 주시고 테스트를 해보시기 바랍니다.
감사합니다.