• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 896
2007.04.02 (04:34:47)
아래의 하단에 기술한 것 같이
FAQ에 있는 그대로 테스트를 했습니다.
(수도 없이 테스트를 했습니다.)

왜 그럴까요?



>안녕하세요?
>
>필터 관련 문제 때문에 저희가 티맥스쪽에 문의해서 얻은 아래에 적어 놓을테니 참고하세요
>
>예전 LPL(엘지 필립스엘시디)쪽에서 발생했던 문제점 해결한 내용입니다.
>
>그럼 수고하세요.
>
>[관련내용]
>
>일단 JEUS에서 변경된 class를 auto reload하는 방법에는 두가지가 있습니다.
>
>첫번째는    시간주기로 container에서 변경된 class를 체크하여 auto reload하는 방식이고
>
>첫번째는    변경된 class에 요청이 왔을 때 auto reload하는 방식입니다
>
>
>
>이러한 설정은
>
>$JEUS_HOME/config/[nodename]/[nodename]_servlet_engine1/jeus-web-dd_[contextname].xml에서 할수 있으며
>
>jeus-web-dd_[contextname].xml 파일을 열어보시면
>
>
>
>….
>
><auto-reload>
>
>            <enable-reload>true</enable-reload>                       --- 첫번째 방식 default 시간간격 : 300초
>
>            <check-on-demand>true</check-on-demand>       --- 두번째 방식
>
></auto-reload>
>
>….
>
>위와 같이 auto-reload에 관한 설정을 보실 수 있습니다.
>
>테스트시에도 변경된 class를 적용하신후, 바로 호출하였기 때문에 두번째 방법이 먼저 적용되었습니다.
>
>
>
>두번째 방식(check-on-demand)은 다른 WAS에서는 사용하지 않는 방식으로, 개발자의 편의를 위해서
>
>JEUS에 도입된 기술입니다. 그런데 이 방식의 알고리즘(원문 메시지 참고)상 servlet filter를 사용할 경우,
>
>처음 호출시에는 호출한 servlet만 auto-reload되고 servlet filter는 auto reload되지 않기 때문에, 위와
>
>같은 문제가 발생한 것 같습니다. (두번째 호출시에는 servlet filter 또한 auto reload되기 때문에 정상적으로
>
>Hash code값이 바뀌어 나옵니다)
>
>
>
>다른 WAS에서는 위와 같은 문제가 발생하지 않은 이유는 다른 WAS의 경우 첫번째방식만을 지원하고 있고
>
>check하는 시간 간격이 짧기 때문에 위와 같은 문제가 발생하지 않는 것으로 추정됩니다.
>
>
>
>=== 해결 방법 ===
>
>jeus-web-dd_[contextname].xml의 <check-on-demand>를 false로 설정하시고
>
>….
>
><auto-reload>
>
>            <enable-reload>true</enable-reload>                
>
>            <check-on-demand>false</check-on-demand>
>
></auto-reload>
>
>….
>
>
>
>$JEUS_HOME/config/[nodename]/[nodename]_servlet_engine1/WEBMain.xml에서
>
><web-container>태그 바로 하단에 <monitoring>/<check-class-reload>를 아래와 같이 설정하시면 됩니다.
>
>(설정후 재부팅하셔야 적용됩니다.)
>
>
>
><web-container>
>
><monitoring>
>
>                 <check-class-reload>2000</check-class-reload>
>
></monitoring>
>
>……..
>
>
>
>위와 같이 설정하였을 경우 2초(2000ms)간격으로 container에서 class reload된 것을 체크하겠다는 의미입니다.
>
>시간 간격은 편하실 되로 적용하시면 됩니다.(최소값은 1초(1000ms)입니다)
>
>
>
>위의 내용은 실제로 테스트를 한 내용으로 위와 같이 하고 동일한 테스트를 실행하면 hash code값이 class reload된후
>
>재호출시에도 변경되어 나옵니다.
>
>
>
>>게시판을 이용해 주셔서 감사합니다.
>>다음양식에 맞게 입력해주세요.
>>
>>* 고객시스템명 :
>>* GAUCE 버전 : 4.0(JAVA)
>>* WAS 종류(WebLogic 등등) : JEUS 5.0 Fix 13
>>* DB 종류 : Oracle 9i
>>* 문의 유형(질문/요청/참조) : 질문
>>* 내용 :
>>
>>=======================================================
>>질문에 답변이 없어서 다시한번 질문합니다.
>>=======================================================
>>
>>
>>JEUS에서 가우스 필터를 등록해서 사용하고 있습니다.
>>Gauce FAQ에 있는대로 설정을 해 주었는데
>>ANT를 이용하여 build한 다음 Gauce Filter가 다시 로딩이 되지 않습니다.
>>ANT로 빌드시 기존에 있던 클래스 파일들을 자동으로 모두 삭제한 다음
>>컴파일된 파일이 WEB-INF/classes아래로 옮겨집니다.
>>
>>다음은 설정된 구성입니다.
>><jeus-web-dd.xml>
>><?xml version="1.0" encoding="UTF-8"?>
>><jeus-web-dd xmlns="http://www.tmaxsoft.com/xml/ns/jeus">
>>    <context-path>/</context-path>
>>    <enable-jsp>true</enable-jsp>
>>    <auto-reload>
>>        <enable-reload>true</enable-reload>
>>        <check-on-demand>false</check-on-demand>
>>    </auto-reload>
>>    
>>    <res-ref>
>>      <jndi-info>
>>        <ref-name>import</ref-name>
>>        <export-name>import</export-name>
>>      </jndi-info>
>>    </res-ref>
>>
>>    <max-instance-pool-size>-1</max-instance-pool-size>
>>    <url-rewriting>false</url-rewriting>
>>    <enable-default-login>false</enable-default-login>
>>    <webinf-first>false</webinf-first>
>></jeus-web-dd>
>>
>>
>><WEBMain.xml>
>><?xml version="1.0" encoding="UTF-8"?>
>><web-container xmlns="http://www.tmaxsoft.com/xml/ns/jeus">
>>    <monitoring>
>>        <check-class-reload>5000</check-class-reload>
>>    </monitoring>
>>    <context-group>
>>       <group-name>MyGroup</group-name>
>>       <webserver-connection>
>>           <http-listener>
>>               <listener-id>import_02</listener-id>
>>               <port>6066</port>
>>               <output-buffer-size>8192</output-buffer-size>
>>               <thread-pool>
>>                   <min>10</min>
>>                   <max>20</max>
>>               </thread-pool>
>>           </http-listener>
>>       </webserver-connection>
>>    </context-group>
>></web-container>
>>
>>
>><web.xml>
>><?xml version="1.0" encoding="UTF-8"?>
>><web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
>>        <!-- Session Timeout -->
>>        <session-config>
>>                <session-timeout>720</session-timeout>
>>        </session-config>
>>        
>>        <!-- Define Gauce Filter -->
>>        <filter>
>>                <filter-name>GauceFilter</filter-name>
>>                <filter-class>com.gauce.filter.GauceFilter</filter-class>
>>                <init-param>
>>                        <param-name>conf-reload</param-name>
>>                        <param-value>5000</param-value>
>>                </init-param>
>>        </filter>
>>        <filter-mapping>
>>                <filter-name>GauceFilter</filter-name>
>>                <url-pattern>/*</url-pattern>
>>        </filter-mapping>
>>  
>>        <!-- Define JJActionServlet -->
>>        <servlet>
>>                <servlet-name>JJActionServlet</servlet-name>
>>                <servlet-class>kr.co.jinjin.servlet.JJActionServlet</servlet-class>
>>                <init-param>
>>                        <param-name>action_package</param-name>
>>                        <param-value>kr.co.jinjin.action</param-value>
>>                </init-param>
>>                <init-param>
>>                        <param-name>action_config</param-name>
>>                        <param-value>conf/action_config.xml</param-value>
>>                </init-param>
>>        </servlet>
>>        <servlet-mapping>
>>                <servlet-name>JJActionServlet</servlet-name>
>>                <url-pattern>/Import.cmd</url-pattern>
>>        </servlet-mapping>
>>        
>>        <!-- Define Error Page -->
>>        <error-page>
>>                <error-code>500</error-code>
>>                <location>/common/error/500.jsp</location>
>>        </error-page>
>>        
>>        <resource-ref>
>>                <description>Oracle Server Datasource Configuration</description>
>>                <res-ref-name>import</res-ref-name>
>>                <res-type>javax.sql.DataSource</res-type>
>>                <res-auth>Container</res-auth>
>>        </resource-ref>
>>        
>>        <!-- Define Welcome File -->
>>        <welcome-file-list>
>>                <welcome-file>index.jsp</welcome-file>
>>                <welcome-file>index.html</welcome-file>
>>                <welcome-file>index.htm</welcome-file>
>>        </welcome-file-list>
>></web-app>
>>
>>왜 그럴까요?
>>항상 빌드하고 난 다음에는
>>가우스 필터쪽에서 ClassCastException이 발생하여 여러번 화면을 Refersh 해도
>>동일한 에러가 발생하여 Jeus Container를 다시 죽였다 살려야합니다.
>>
>>도와주시죠 ㅡ,.ㅡ;  
>>
>
번호 제목 닉네임 조회 등록일
2869 메일주소를 적어주세요~
기술지원12
891 2007-04-06
2868 라이센스 에러[긴급]
박은창
887 2007-04-05
2867 라이센스 에러[긴급]
기술지원
857 2007-04-06
2866 가우스 서비스 빌더 부탁드립니다.
하창훈
917 2007-04-04
2865 보내드렸습니다
기술지원12
862 2007-04-05
2864 클라이언트에서 웹페이지 접근시 그리드 부분이 보이지 않아요!
이재성
915 2007-04-04
2863 클라이언트에서 웹페이지 접근시 그리드 부분이 보이지 않아요!
기술지원12
963 2007-04-10
2862 메일주소 알려드립니다.
이재성
841 2007-04-11
2861 index.html treeview 안보이는 문제(select.jsp?X-UIClient=G40)확인 정상!
안현오
948 2007-04-03
2860 index.html treeview 안보이는 문제(select.jsp?X-UIClient=G40)확인 정상!
기술지원
1082 2007-04-06
2859 새로운 라이센스키를 변경후 오류가 났습니다.
정수분
1124 2007-04-01
2858 달력예제 부탁드립니다.
김선운
839 2007-03-31
2857 달력예제 부탁드립니다.
관리자
1030 2007-04-02
2856 [재질문] 컴파일 후 GauceFilter가 살아나지 않습니다.
유창원
1045 2007-03-31
2855 [재질문] 컴파일 후 GauceFilter가 살아나지 않습니다.
관리자
1093 2007-03-31
Selected 그대로 했는데 안되서 질문드렸습니다.
유창원
896 2007-04-02
2853 gauce40/treeview.html treeview가 안보이는 문제
안현오
1251 2007-03-30
2852 gauce40/treeview.html treeview가 안보이는 문제
관리자
1067 2007-03-30
2851 답변이 없으셔서..
이재휴
832 2007-03-30
2850 답변이 없으셔서..
관리자
1008 2007-03-30
Tag List
XE Login