기본 콘텐츠로 건너뛰기

10월, 2010의 게시물 표시

JRebel에서 class reload 후의 breaking point 오류 관련

현재 tons of classes 들 때문에 로컬에서조차 코드 수정 후 다시 올리는 자체가 너무 부담스러운, 그리고 HotSwap에서 제공하는 메소드 내 코드수정 핫스왑만응로는 도저히 시간을 줄일 수 없어서 JRebel 30일버전을 이용하여 테스트중입니다. ( JRebel 3.1.2a stable release )간단한 것들을 고치거나 할때는 아무런 문제가 없었습니다만, 역시 클래스 엄청 늘어나고 웹인스턴스 2~3개를 같이 띄워야 하는, 로컬 피씨에서 인스턴스 올리는데만 몇분씩 걸리는 것들에 JRebel을 적용하니까 up time 이 엄청 늘어나는군요. 3분 남짓 걸리던 톰캣 스타트업 시간이 6분 가까이 늘어납니다. ( 계속 타임아웃 나서 1분씩 타임아웃 시간을 WTP에서 늘림 –_-; )뭐 이정도는 그 이후에 JRebel이 가져다 줄 hotswap 기능에 비하면 참을만 하다고 하겠습니다만, 현재 버전의 문제 중 하나인 JRebel에서 클래스 리로딩 후 breakpoint 찍어놓은 것들과 실제 라인이 맞지 않는다는 문제… 는 참으로 사람을 피곤하게 만드는군요.우연히 Twitter에 푸념을 적어놨더니 zeroturnaround의 개발자가 리플을 남겨놨는데, "debugger goes crazy about the line numbers after the reload. Did you enable the debugger support?"라고 하길래 체크해서 옵션 다 켜져 있다고 했더니, "It may have glitches.. eventually we'll improve that"이라고 하는군요. 제 설정에 뭔가 문제가 있을지도 모르니 계속 이것저것 손을 대보긴 해야겠습니다만, 아무래도 한동안은 다시 JRebel 생각은 접고 개발PC업그레이드와 더불어 OSGi 적용 등에 머리를 굴려봐야겠습니다. –_-;-P.S-첨에는 트위터에 쓰여진 글을 캡춰해서 올렸습니다만, 왠지 저 개발자가 그 캡춰때문에 안좋은 상황에 처하진 않을까…

아이폰 유저는 스카이프 착신설정 불필요

좀 지난 내용이긴 하지만, 아이폰용 스카이프가 업데이트 된 이후로 아이폰 사용하고 데이터 요금제 가입하신 분이라면 평소에 아이폰을 띄워놓기만 하면(백그라운드) 스카이프에서 걸려오는 전화를 모두 받을 수 있습니다.스카이프 클라이언트를 다운로드 받아서 실행, 로그인 후 프로그램을 그냥 띄워만 놓으면 언제든 스카이프에서 누군가 자기에게로 전화를 했을 때 곧바로 아이폰에서 알람이 뜨고, 통화를 누르면 스카이프 프로그램이 구동되면서 연결됩니다. 전화 거는 상대에게는 제가 온라인으로 표시가 되구요.물론 아이폰이 멀티쓰레딩 지원하는 iOS 4.x대로 업그레이드는 되어 있어야 합니다.아이폰 유저들은 그냥 앞으로도 쭈욱~ 스카이프에 친구들 다 등록해 놓고 무료통화 즐기면 되겠네요.070번호 알려주고 착신전환 설정하고 하는건 돈도 돈대로 들고 과금도 되서 이것저것 귀찮고, wifi 마음대로 접속이 힘든 해외 출장때만 쓸만한 듯.단점 : 베터리가 엄청 빨리 닳습니다. -_-;

블리즈컨 2010 merchandise

아악~ 티켓 구매한 계정으로 로그인 해야 볼 수 있다. ㅠ.ㅠ

US 애들한테 부탁해서 구매한 다음 블리즈컨 갔다오는 사람들에게 배송을 부탁할 수 밖에.. –_-;;
근데 presale이고 뭐고 뭐가 있는지 알아야 구매를 결정할텐데 말이지.



올해는 블리즈컨 참가자에게 데쓰윙 가면 쓴 멀롯 팻을 주는거 같다.

IceScrum 2.15.1 설치시 로그에 View.servePage 오류가 나는 경우

IceScrum 2.15.1을 설치하고 tomcat을 실행시킨 다음 웹페이지에서 접속을 할때 아래와 같이 catalina.out에 오류가 나는 경우02:28:37,217 ERROR View:151 - Problem encountered during View.servePage
java.lang.NoClassDefFoundError: javax/el/ELContext
        at com.icesoft.faces.context.View$2.serve(View.java:72)
        at com.icesoft.faces.context.View.servePage(View.java:149)
        at com.icesoft.faces.webapp.http.core.SingleViewServer.service(SingleViewServer.java:52)
        at com.icesoft.faces.webapp.http.common.ServerProxy.service(ServerProxy.java:11)
        at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet$4.service(MainSessionBoundServlet.java:114)
        at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:24)
        at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet.service(MainSessionBoundServlet.java:160)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher$1.service(SessionDispatcher.java:42)
        at com.icesoft.fa…