• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 1325
2009.04.23 (10:47:21)

>답변이 없으셔서 다시 올립니다.
>답변 부탁 드립니다.
>
>고객시스템명 : 질병관리본부 내 시스템
>* GAUCE 버전 : GAUCE 4.0 Unicode
>* WAS 종류(WebLogic 등등) : tomcat
>* DB 종류 : 오라클 9.X
>* 문의 유형(질문/요청/참조) : 질문
>* 내용 : spring 2.0 + gauce
>
>안녕하세요. spring 2.0 환경에서 가우스로 프레임웍 구성 관련하여 문의 드립니다.
>
>문제는
>
>spring 에서 제공하는
>
>        <!--/ multipart resolver /-->
>    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
>        <property name="maxUploadSize"><value>${max.upload.size}</value></property><!-- byte -->
>    </bean>
>
>를 설정한후
>
>1. 가우스 트랜잭션(tr)에서
>
>                                        GauceInputStream gis = ((HttpGauceRequest)req).getGauceInputStream();
>                            
>>>java.lang.ClassCastException 이 떨어집니다.
>
>스프링이 HttpServletRequest를         MultipartHttpServletRequest 로 변환하여 HttpGauceRequest로 변환을 못하는것 같구요.
>
>
>2. 그래서 사이트에서 여러가지 찾은걸로 gauce.xml에
>
>        <connector>
>            <request className="com.gauce.filter.HttpStrutsRequestWrapper"/>
>            <response className="com.gauce.filter.HttpGauceResponseWrapper"/>  
>        </connector>
>
>설정후 아래와 같이 실행하면
>
>                        GauceConnection conn = (GauceConnection)req.getAttribute("GauceConnection");
>                        
>                        HttpGauceRequest hreq = conn.getHttpGauceRequest();
>                        HttpGauceResponse hres = conn.getHttpGauceResponse();
>                        
>                        GauceInputStream gis = hreq.getGauceInputStream();
>                        
>  >>java.io.IOException: 더 이상 입력 스트림으로부터 읽어들일 데이터가 없습니다.
>  
>참고로 gauce.xml에서 필터를 com.gauce.filter.HttpGauceRequestWrapper 로 설정후 실행하면
>GauceConnection 값이 null 로 들어옵니다.
>
>사이트를 뒤져보니 여러 사례는 있는데 해결방안은 나와있는게 없네요.
>속시원한 답변 부탁 드려요..
>
>

1. classcast exception은 서비스를 직접 호출시 X-UIClient=G40 이란 파라메터를 붙인 서비스만 GAUCE filter를
통해서 요청을 하게 되어 있습니다. 해당 파라메터가 없으면 classcast exception이 발생합니다.

2. gauce request 생성시 "java.io.IOException: 더 이상 입력 스트림으로부터 읽어들일 데이터가 없습니다."가 발생한다면.. Framework의 ActionForm이나 Multipart 등에서 입력 스트림을 전부 읽어 들여서 발생합니다.
GAUCE 서비스 작성시에는 multipart form을 사용하실 수 없습니다.
 
Tag List
XE Login