본문 바로가기

JEUS

jeus4.0 &5.0 auto-reload 하기(class 자동인식) -> 펌글

jeus4.0(5.0동일) 버젼 hot deploy (auto-reload) 기능
jeus-web-dd_[컨테이너명].xml 파일에 auto-reload 설정
클래스들이 JEUSMain 의 <user-class-path> 에 잡혀있으면 hot deploy가 안되는가?
 
auto-reload 에서 enable-reload,check-on-demand 모두 true로 되어 있어야 hot deploy 됩니다.
 
        <auto-reload>
            <enable-reload>true</enable-reload>
            <check-on-demand>true</check-on-demand>
        </auto-reload> 
 
check-on-demand가 true인 경우,
해당 페이지의 요청이 들어왔을때 사용하는 클래스들의 last-modified 시간을 체크하여 변경이 되었으면 reload를 수행합니다.
 
user-class-path가 context쪽으로 설정이 되어 있을 경우 WEB Container쪽의 classLoader와 context쪽의 classloader가 달라 상호참조하는 경우가 발생하면 에러가 생길 수 있고, 역시 WEB Container쪽에서 클래스를 load하기 때문에 class가 반영되지 않게 됩니다.
 
 
<auto-reload를 true 로 설정하고 class 파일을 변경했을때 세션이 끊어지는 경우>
Hot Deploy를 사용하려면 user-class-path 옵션은 삭제해야 합니다.
WEBMain.xml에 해당 내용을 추가하세요.
### WEBMain.xml  ###
 
<?xml version="1.0"?>
<web-container xmlns="http://www.tmaxsoft.com/xml/ns/jeus" version="6.0">
    <context-group>
        <group-name>MyGroup</group-name>
 <jsp-engine>
  <check-included-jspfile>true</check-included-jspfile>
 </jsp-engine>
        <webserver-connection>
            <http-listener>
                <listener-id>http1</listener-id>
                <port>80</port>
                <thread-pool>
                    <min>10</min>
                    <max>20</max>
                    <step>1</step>
                </thread-pool>
            </http-listener>
        </webserver-connection>
        <logging>
            <access-log>
                <handler>
                    <file-handler>
                        <name>handler1</name>
                        <valid-day>1</valid-day>
                    </file-handler>
                </handler>
            </access-log>
        </logging>
        <session-config>
                  <reload-persistent>true</reload-persistent>
        </session-config>

    </context-group>
</web-container>

'JEUS' 카테고리의 다른 글

JEUS와 이클립스 연동  (0) 2014.01.11