다음 판 | 이전 판 |
jboss_eap_7_hot_deply_development_mode_설정 [2017/04/18 08:48] – 만듦 koov | jboss_eap_7_hot_deply_development_mode_설정 [2020/02/19 02:07] (현재) – koov |
---|
====== JBoss EAP 7 Hot Deploy / Development mode 설정 ====== | ====== JBoss EAP 7 Hot Deploy / Development mode 설정 ====== |
| |
| 실시간 JSP컴파일 방식을 사용하기 위해서는 소스배포(Unmanaged)형태로 배포하여야 한다. (WAR형태 불가능) |
| |
| 일단 Undertow 파일 감시기능이 JSP파일 변경을 감지 한 후 재컴파일하도록 설정해야 한다. |
| |
| ===== EAP 7.0.x ===== |
| EAP 7.0.x 버전에서는 ''io.undertow.disable-file-system-watcher'' 시스템 속성을 ''true''로 설정하여 파일 감시자를 비활성화 할 수 있습니다. |
| |
| <WRAP prewrap> |
| <code bash> |
| JAVA_OPTS="$JAVA_OPTS -Dio.undertow.disable-file-system-watcher=true" |
| </code> |
| </WRAP> |
| |
| 또는 CLI모드로 아래와 같이 지정합니다. |
| |
| <WRAP prewrap> |
| <code> |
| /system-property=io.undertow.disable-file-system-watcher:add(value=true) |
| </code> |
| </WRAP> |
| |
| ===== EAP 7.1.x 이상 ===== |
| |
| EAP 7.1.0 이상 에서는 undertow subsytem에서 ''disable-file-watch-service'' 속성을 true로 설정하여 비활성화 할 수 있습니다. |
| |
| <WRAP prewrap> |
| <code> |
| /subsystem=undertow/servlet-container=default:write-attribute(name=disable-file-watch-service,value=true) |
| </code> |
| </WRAP> |
| |
| ===== Development mode 설정 ===== |
| 파일 감시자가 비활성화 된 경우에도 Undertow 하위 시스템에서 재 컴파일을 활성화 할 수 있습니다. 모든 요청에서 재 컴파일 검사를위한 개발 모드를 사용하십시오. |
| |
| <WRAP prewrap> |
| <code xml> |
| <subsystem xmlns="urn:jboss:domain:undertow:3.1"> |
| ... |
| <servlet-container name="default"> |
| <jsp-config development="true"/> |
| <websockets/> |
| </servlet-container> |
| </code> |
| </WRAP> |
| |
| CLI모드에서 관련 설정을 한번에 설정 할 수 있습니다. |
| 다만 ''check-interval'' 이나 ''modification-test-interval'' 수치를 너무 작게 잡으면 서버에서 체크하는 부하가 커지므로 적당한 시간으로 설정하여야 합니다. |
| 해당 값은 ''초''단위입니다. |
| |
| <WRAP prewrap> |
| <code bash> |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=development,value=true) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=recompile-on-fail,value=true) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=check-interval,value=60) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=modification-test-interval,value=60) |
| </code> |
| </WRAP> |
| |
| ====== configuration 직접 수정방법 ====== |
| |
| 위의 방법이 아닌 직접 configuration xml파일을 직접 수정하는 방법이다. 권장하지는 않는다. |
해당 설정파일의 내용중 아래 부분을 추가 하면 된다. | 해당 설정파일의 내용중 아래 부분을 추가 하면 된다. |
| |
<WRAP prewrap> | <WRAP prewrap> |
<code vim> | <code vim> |
... 생략 | ... 생략 |
| <subsystem xmlns="urn:jboss:domain:undertow:3.1"> |
| <buffer-cache name="default"/> |
| <server name="default-server"> |
| <http-listener name="default" socket-binding="http" redirect-socket="https"/> |
| <host name="default-host" alias="localhost"> |
| <filter-ref name="server-header"/> |
| <filter-ref name="x-powered-by-header"/> |
| </host> |
| </server> |
<servlet-container name="default"> | <servlet-container name="default"> |
<!-- 아래 부분 변경 --> | <!-- 아래부분 수정 --> |
<jsp-config development="true" check-interval="1" modification-test-interval="1" recompile-on-fail="true"/> | <jsp-config development="true" check-interval="1" modification-test-interval="1" recompile-on-fail="true"/> |
| <!-- 여기까지 --> |
<websockets/> | <websockets/> |
... 생략 | </servlet-container> |
| <handlers> |
| <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/> |
| </handlers> |
| <filters> |
| <response-header name="server-header" header-name="Server" header-value="JBoss-EAP/7"/> |
| <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/> |
| </filters> |
| </subsystem> |
| ... 생략 |
</code> | </code> |
</WRAP> | </WRAP> |
| |
| |
| * CLI 명령어로 바꾸기 위해서는 아래 방식을 쓰면 된다. |
| |
| <WRAP prewrap> |
| <code bash> |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=development,value=true) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=recompile-on-fail,value=true) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=check-interval,value=1) |
| /subsystem=undertow/servlet-container=default/setting=jsp:write-attribute(name=modification-test-interval,value=1) |
| </code> |
| </WRAP> |
| |
| ===== 참조링크 ===== |
| * https://access.redhat.com/solutions/3085681 |
| * http://tyboss.tistory.com/entry/JBoss-%EB%B0%B0%ED%8F%AC%EB%90%9C-jboss-application-jsp-%EC%88%98%EC%A0%95-%EC%8B%9C-%EB%B0%94%EB%A1%9C-%EB%B0%98%EC%98%81 |
| * http://stackoverflow.com/questions/31795274/how-do-i-enable-on-the-fly-compilation-of-jsps-in-wildfly-9 |
| |
| |