2010-04-09 3 views
1

EJB 및 다른 Java EE 6 기술을 백엔드로 사용하는 GWT 애플리케이션을 개발 중입니다. 현재 Safari 용 GWT 2.0 플러그인을 사용하고 있습니다.GWT 개발의 백엔드 새로 고침

내 GWT 클라이언트 측 코드를 변경하고 내 IDE (NetBeans)에 저장하면 변경 사항이 활성화되기 위해 브라우저에서 간단히 다시로드하면됩니다. 그건 잘된거야!

그러나 GWT 클라이언트 측에서 서버 측 (EJB, GWT 서버 코드 등)에서 작업하는 경우가 종종 있습니다. 서버 측에 수행 ​​된 모든 변경 사항은 Glassfish V3 서버에 점진적으로 배포되지 않는 것처럼 보입니다. 현재 GWT 개발 모드 응용 프로그램을 닫은 다음 EJB를 다시 컴파일하고 GWT 개발 모드로 돌아갑니다. 지루한 일입니다.

더 좋은 방법은 없나요? NetBeans에서 "deploy on save"옵션을 시도했지만 트릭을 수행하지 않는 것 같습니다.

답변

1

트릭은 ear 파일 대신 explode ear 디렉토리를 만들어 응용 프로그램 서버에 배포하는 것입니다. JBoss 및 Weblogic에서 작동하며 은 glassfish에서 작동해야하지만은 시도하지 않았습니다.

아이디어는 아카이브를 전혀 사용하지 않는다는 것입니다. war 디렉토리에서 WEB-INF/classes 폴더를 만들고이 디렉토리에 클래스 파일을 작성하도록 IDE를 구성합니다. 그렇게하면 IDE에서 java 파일을 변경하면 클래스 디렉토리에 기록되고 JVM이 클래스를 핫 전개합니다.

이 접근 방식에는 몇 가지 제한 사항이 있습니다. 메소드 서명을 변경하거나 클래스 또는 새 메소드를 추가 할 경우 JVM은이를 수신 할 수 없습니다. 이 경우 을 만지면 web.xml이 WAR을 다시 배포합니다. 이 자체로 전체 응용 프로그램 서버를 다시 시작하면 개선됩니다.

올바른 설정을 얻는 데 1 ~ 2 시간이 걸리지 만 그 후에는 그냥 좋아할 것입니다.

+0

감사합니다. 시험해보십시오! –

관련 문제