이 누리집은 대한민국 공식 전자정부 누리집입니다.
이*근
2012-11-22 15:04:50
1,528
실행환경
완료
@ 지금 저희 회사 홈페이지에 고객 서비스 이용 관련 페이지를 제작 중입니다.
현재 고객이 조회한 정보를 엑셀로 출력하는 기능 개발중 난해한 문제가 발생하여 질문 드립니다.
문제 내용은 엑셀 출력을 위해 @@@-servlet.xml 파일에 BeanNameViewResolver 클래스를 추가하였습니다.
BeanNameViewResolver 추가 후 Controller호출은 정상적이나 ModelAndView 에 설정된 View를 읽어오지 못하고 있습니다.
아래에서 다시 자세하게 설명을 드리겠습니다.
1. 오류 발생내용
1) @@@-servlet.xml 에 다운로드를 위해 다음과 같은 클레스 설정을 추가 하였습니다.
===============================설정내용(1)=================================
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
<property name="order" value="0" />
</bean>
===========================================================================
2) 위 내용을 추가한 이후 모든 Controller들이 View를 읽어 오지 못하고 있습니다.
==========================오류출력내용=====================================
심각: Servlet.service() for servlet hatobin threw exception
javax.servlet.ServletException: Could not resolve view with name 'WEB-INF/loginAndList/main.jsp' in servlet with name 'hatobin'
============================================================================
- 엑셀출력은 완벽하게 됩니다. 하지만 View가 출력이 되지 않습니다.
- "설정내용(1)" 을 삭제하면 지금의 문제인 View가 제대로 출력이 가능 합니다.
2. 추가 내용
- 참고 사이트 : http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte:fdl:excel&s[]=beannameviewresolver#excel_다운로드
- applicationContext.xml 파일을 만들어 '설정내용(1)' 의 내용을 추가하였으나 문제를 해결하지 못하였습니다.
- <property name="order" value="0" /> 를 삭제하거나 value 값을 1 로 바꾸는 등, id 를 부여하는 등등 여러가지 시도를 해 보았습니다.
안녕하세요.. 이상근님..
2)의 오류 내용을 봐서는 BeanNameViewResolver가 아닌 UrlBasedViewResolver나 다른 JSP를 처리를 위한 ViewResolver가 order 0로 존재하시는 것 같습니다.
이 ViewResolver를 찾아서.. Order를 증가 시키셔야 BeanNameViewResolver가 먼저 호출되고..
없으면.. JSP를 호출하는 구조로 되어 있습니다. (UrlBasedViewResolver는 항상 마지막 Order를 가져야 함)
그럼.. 확인 부탁드립니다.
감사합니다.