본문 바로가기

프로그래밍/GAUCE

GAUCE FAQ (가우스 문의사항)

가장 많이 들어오는 오류의 내용입니다.

현재까지 원인을 보면

1. 올바르게 가우스가 설치가 안된 경우.
    - 가우스 설치후, 해당 context폴더의 이름 변경, 이동등이 발생한 경우

2. 컴포넌트 버전 문제
    - 가우스 4.0에서는 내부적으로 특정 값을 화면의 컴포넌트로 받아서 가우스 컴포넌트에서 온 request
      검증하게 됩니다.
      컴포넌트 버전이 낮은 경우, 특정 파라미터가 전송이 되지 않기 때문에 발생 할수 있게 됩니다.

    - 이런 경우에는 대부분의 PC에서는 잘되는데, 특정 PC에서 접속했을때 오류가 발생하기도 합니다.

3. 스트럿츠 연동시 문제
    - 혹시 조회시에는 문제가 발생않는데 tr시 이런 에러가 발생을 하면은 주로 service= loader.newService();
      이 부분에서 에러가 발생을 합니다. 또는 request casting하는 부분에서도 발생할수있습니다.
    
      이럴경우
       import com.gauce.http.HttpGauceRequest;

      시켜주시고
      loader = new ServiceLoader(request, response);

      위의 부분을
      HttpGauceRequest gauceRequest  = (HttpGauceRequest)request.getAttribute("HttpGauceRequest");
      loader = new ServiceLoader(gauceRequest, response);

     아래와 같이 수정을 하시면 됩니다.

     단, 기존에  System.out.println("request.getClass().getName() : " + request.getClass().getName());
     부분을 찍었을때 HttpGauceRequestWrapper 가 안나오면 위와같이 처리하면 됩니다.

  - Struts와 같은 프레임웍과 원활하게 연동할 수 있도록 라이브러리를 추가하고 환경파일인 gauce.xml에
     다음의 설정이 새로 추가되었다. 기존 환경파일과도 100%호환된다.
        <connector>
            <request className="com.gauce.filter.HttpGauceRequestWrapper"/>
            <response className="com.gauce.filter.HttpGauceResponseWrapper"/>  
        </connector>
        
     -> (만약 스트러츠와 연동을 하기 위해서는)
        <connector>
            <request className="com.gauce.filter.HttpStrutsRequestWrapper"/>
            <response className="com.gauce.filter.HttpGauceResponseWrapper"/>  
        </connector>    

4. 레진 서버를 사용하는 경우.
   - 레진의 경우 request 를 자체적으로 변형을 시켜서 gauce.xml 을 struts셋팅으로 변경을 시켜도
     오류가 나는 경우에는 아래와 같이 소스를 변경 시켜 주어야 한다.  

     GauceConnection conn = (GauceConnection)request.getAttribute("GauceConnection");
     HttpGauceRequest hreq = conn.getHttpGauceRequest();
     HttpGauceResponse hres = conn.getHttpGauceResponse();
     System.out.println(hreq.getClass().getName());
     System.out.println(hres.getClass().getName());

//GauceOutputStream gos = ((HttpGauceResponse) response).getGauceOutputStream();
GauceOutputStream gos = hres.getGauceOutputStream();

 

 

 

'프로그래밍 > GAUCE' 카테고리의 다른 글

GAUCE 트리뷰 그리드 메뉴 이미지 적용 가이드  (0) 2011.07.01