테스트 서버를 다시 시작해야 할 경우

다음 하위 주제에서는 서버를 다시 시작해야 할 여러 가지 상황에 대해 설명합니다.

개발 환경에서 서버에서 실행 중일 때 서버에서 애플리케이션을 디버깅하는 경우와 같이 애플리케이션을 변경할 수도 있습니다. 일부 경우에 서버를 다시 시작하지 않고도 수정된 코드를 동적으로 다시 로드할 수 있습니다. 서버 유형 및 수정된 자원 유형에 따라 프로그램 상태가 유실될 수도 있습니다.

애플리케이션이 서버에서 실행 중일 때 코드를 변경하면 JVM(Java™ Virtual Machine)은 코드가 자동 또는 수동으로 다시 로드될 때까지 초기 코드를 계속 실행합니다. 예를 들어, JSP 소스를 수정할 수 있고 서버에서 자동으로 변경사항이 다시 로드됩니다. 다른 자원(예: Tomcat에서 실행되는 Java 클래스)의 경우 서버에서 변경사항을 인식하도록 서버를 다시 시작해야 합니다.

서버 구성에 대한 변경사항

서버 실행 중에 서버 또는 서버 구성을 변경하는 경우(예: 포트 번호 변경) 서버를 다시 시작해야 합니다.

JSP, HTML, 그래픽, Java가 아닌 파일에 대한 변경사항

JSP, HTML, GIF, JPG 또는 유사한 자원 파일에서 수행한 변경이 이에 해당됩니다. 서버 실행 중에 파일을 저장하면 서버에서 애플리케이션을 공개해야 합니다. 공개 실행은 자원 파일에 대한 변경사항이 링크된 자원인 경우 특히 중요합니다. 이는 작업공간 외부의 파일 시스템의 위치에 저장된 파일이나 폴더일 수 있습니다. 링크된 자원에 대한 변경은 변경이 작업공간 외부에서 수행된 경우 워크벤치 또는 서버에서 발견될 수 없습니다.

서버에서 애플리케이션을 공개하려면 서버 시작 시 자동 공개 선택란( > 환경 설정 > 서버 > 실행 페이지)을 활성화하는 경우 자동 공개 간격이 지나길 기다릴 수 있습니다. 그러나 서버 시작 시 자동 공개 선택란의 선택을 취소한 경우 애플리케이션을 수동으로 공개해야 합니다(서버 보기에서 서버를 마우스 오른쪽 단추로 클릭하고 공개 선택). 공개를 완료한 후 서버에 대한 웹 브라우저를 새로 고쳐서 변경사항을 인식하십시오. 애플리케이션의 상태는 유실되지 않습니다.
팁: 개발 중에 언제라도 정적 자원에 대한 변경사항이 서버에서 업데이트되지 않았으며 서버 시작 시 자동 공개 선택란이 선택 취소된 경우 서버 보기에서 서버를 마우스 오른쪽 단추로 클릭하여 공개를 선택하여 수동 공개를 실행하십시오. 공개를 완료한 후 웹 브라우저를 새로 고치면 서버에서 변경사항이 업데이트됩니다.

자동 또는 수동으로 서버에 공개하는 방법에 대한 자세한 정보는 애플리케이션 공개 주제를 참조하십시오.

서블릿 및 관련 클래스에 대한 변경사항

서블릿을 변경하고 서버 실행 중에 파일을 저장하는 경우 해당 애플리케이션에 대한 다시 로드를 활성화했으면 서블릿이 다시 로드됩니다. 서버가 핫 메소드 바꾸기를 실행하는 경우1 브라우저를 새로 고치지 않고도 변경이 자동으로 수행됩니다. 서버에서 애플리케이션을 공개할 때 서버에서 변경사항을 인식합니다. 웹 브라우저를 새로 고치는 경우 애플리케이션 상태는 유실되지 않습니다.

서버에서 애플리케이션을 공개하기 위해 자동 공개 간격이 지나길 기다리거나 애플리케이션을 수동으로 공개할 수 있습니다(서버 보기에서 서버를 마우스 오른쪽 단추로 클릭하고 공개 선택). 자동 또는 수동으로 서버에 공개하는 방법에 대한 자세한 정보는 애플리케이션 공개 주제를 참조하십시오. 해당 프로젝트에 대한 세션 데이터가 유실되지만 애플리케이션 내 다른 프로젝트의 상태는 변경되지 않습니다. 네비게이터 보기의 메뉴에서 프로젝트를 다시 시작할 수 있습니다. Tomcat을 실행하고 있고 다시 로딩 기능을 사용하지 않는 경우 서버를 다시 시작하지 않아도 됩니다.

WebSphere Application Server의 경우 웹 프로젝트의 종속 클래스 또는 배치 디스크립터에도 규칙이 적용됩니다. WebSphere Application Server에서 실행되는 web.xml 배치 디스크립터의 보안 또는 로그인 구성 특성을 수정하는 경우 서버를 다시 시작해야 합니다. Tomcat의 경우, 이러한 변경사항에 대해 항상 서버를 다시 시작해야 합니다.

서블릿, 클래스 또는 JSP 파일 추가

서버 실행 중에 서블릿, 종속 클래스 또는 JSP 파일을 웹 프로젝트에 추가하는 경우 다시 로드를 활성화한 경우에 변경사항이 인식됩니다. 다시 로드를 활성화하지 않으면 WebSphere Application Server를 실행하는 경우 애플리케이션을 공개하고 EAR 프로젝트를 다시 시작하거나 Tomcat을 실행하는 경우 애플리케이션을 공개하고 서버를 다시 시작해야 합니다. 서버에서 애플리케이션을 공개하기 위해 자동 공개 간격이 지나길 기다리거나 애플리케이션을 수동으로 공개할 수 있습니다(서버 보기에서 서버를 마우스 오른쪽 단추로 클릭하고 공개 선택). 자동 또는 수동으로 서버에 공개하는 방법에 대한 자세한 정보는 애플리케이션 공개 주제를 참조하십시오. 서버에서 디버그 모드로 핫 메소드 바꾸기 기능을 실행하는 경우 Java 클래스의 변경사항은 자동으로 인식됩니다.

EJB 자원에 대한 변경사항

WebSphere Application Server의 경우 서버는 EAR에서 EJB 프로젝트를 동적으로 다시 시작합니다. 서버에서 디버그 모드로 핫 메소드 바꾸기 기능을 실행하는 경우 Java 클래스의 변경사항은 자동으로 인식됩니다.

알아두기: Tomcat은 EJB 테스트 및 공개를 지원하지 않습니다.

엔터프라이즈 애플리케이션 프로젝트 내의 자원에 대한 변경사항

WebSphere Application Server의 경우 서버 실행 중에 엔터프라이즈 애플리케이션 프로젝트 내 자원을 변경하면 서버가 동적으로 EAR을 다시 시작합니다. Tomcat은 엔터프라이즈 애플리케이션 프로젝트 테스트 및 공개를 지원하지 않습니다.

표 1. 서버가 실행 중인 동안 자원을 수정할 때 취할 수 있는 조치 요약. 표 1에서는 서버가 실행 중일 때 자원을 수행한 경우 사용자가 수행해야 하는 조치에 대해 설명합니다.
수정된 자원 필수 조치
  WebSphere Application Server Apache Tomcat WebSphere Application Server Express®
서버 구성 독립형 WebSphere Application Server와 동일한 동작. 세부사항은 WebSphere Application Server용 Information Center를 참조하십시오. 서버 다시 시작 서버 다시 시작
JSP 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기
서블릿 다시 로드 사용 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기
다시 로드 사용 불가능 EAR 프로젝트 또는 서버 다시 시작 서버 다시 시작 EAR 프로젝트 또는 서버 다시 시작
종속 클래스 또는 배치 디스크립터 다시 로드 사용 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기 웹 브라우저 새로 고치기
다시 로드 사용 불가능 EAR 프로젝트 또는 서버 다시 시작 서버 다시 시작 EAR 프로젝트 또는 서버 다시 시작
EJB 구현 자동으로 다시 로드됨 지원되지 않음 지원되지 않음
EJB 인터페이스 또는 인터페이스의 종속 클래스 자동으로 다시 로드됩니다. 애플리케이션 클라이언트에 EJB에 대한 참조가 있을 경우, 애플리케이션 클라이언트를 다시 시작하십시오. 지원되지 않음 지원되지 않음
EJB, 종속 클래스 또는 배치 디스크립터 자동으로 다시 로드됨 지원되지 않음 지원되지 않음
EJB 또는 추가된 종속 클래스 자동으로 다시 로드됨 지원되지 않음 지원되지 않음
EAR 파일 자동으로 다시 로드됨 지원되지 않음 웹 브라우저 새로 고치기
참고: 핫 메소드 바꾸기 기능은 WebSphere Application Server에 대한 디버그 모드에서 자동으로 실행됩니다.
1 팁: WebSphere® Application Server의 경우 핫 메소드 바꾸기 모드는 자동으로 디버그 모드로 실행됩니다.
주제 유형을 표시하는 아이콘 개념 주제
Information Center의 이용 약관 | 피드백

시간소인 아이콘 마지막 업데이트 날짜: 2014-05-22

파일 이름: csrvdbg.html