본문 바로가기

Daylogs/Logic

로컬환경에서 브라우저와 자바 파일을 이용한 개발 방법

발생일: 2009.12.09

문제:
친구 홍네 파트 연구회에서는 스윙으로 릴리즈 프로그램을 만들고 있다고 한다.
헌데, 아무래도 UI 가 문제인 모양이다. 다들 웹만 하다보니 스윙에는 그닥 익숙치 않아서인 듯 하다.

나도 스윙은 많이 해보지 못했지만 스윙의 UI 는 좀 답답하다.
게다가 간단한 프로그램만 만들려고 해도 영~ 촌스러운 게 모양이 잘 안나온다.ㅎㅎ

이클립스 플러그인으로 구현하면 좋을 듯 싶으나, 잘 모르겠다. -_-a

음... 그렇다면,
로컬 환경에서 브라우저와 자바 파일을 이용해 개발할 수 있는 방법이 있을까...?

생각해보자.


해결책:
로컬에서만 돌아갈 프로그램이라면 이런 방법도 괜찮겠다.

브라우저에서 UI를 구현하고, 브라우저에서 자바 파일을 실행(배치파일을 실행) 하게 하는 식으로 개발하는 거다.

전체적인 프로세는 이렇다.

        브라우저 (UI 담당)     ----------- (실행) ---------->    자바 파일
                   |                                                                       |
                   |                                                                       |
          진행 상태 확인        <----- (AJAX로 확인) ------->    로그 파일



[실행]
다행히 브라우저에서 exe 파일을 실행할 수 있기는 한가보다.
object 태그를 쓰는 방식으로 말이다. (웹페이지(HTML)에서 직접 실행파일(exe) 실행시키기 참고)

아직 안해봤지만, java 실행 구문을 배치파일(.bat) 로 만들어서 돌리면 어떨까 하는데,
이것도 object 태그에서 불러질 지는 의문이다.

정 안된다면, 실행파일을 exe 로 만드는 꼼수를 사용해야 할 듯 하다.

+ 추가 :
    a 태그의 href 로 .bat 파일의 상대경로를 넣는 방식으로 추가할 수 있다.
    단, IE 에서만 지원하며 -_-... bat 파일 실행 시 보안 경고가 뜬다.


[진행 상태 확인]
실행이 가능하다면, 잘 실행되었는지, 상태는 어떤지 확인해야 한다.

일단 실행 후, 실행에 따라 자바 파일에서 파일로 로그를 작성한다.
브라우저에서는 AJAX로 이 파일의 내용을 읽어와 진행 상태를 확인하자는 아이디어다.

로그 파일을 작성할 때 몇 가지 고려해야 될 점이 있다.

  - 실행 아이디
     브라우저에서는 실시간으로 로그 파일에 접근해 내용을 가져와 보여주므로,
     어떤 실행에 대한 로그인 지 알아야 한다.
     브라우저에서 java 파일을 호출할 때, 실행 아이디를 생성해 넘겨주고,
     파일에서는 로그 파일을 작성할 때 어떤 실행에 대한 상태 로그인지 작성해줘야겠다.

  - 파일 확장자 (xml)
     지금 생각으로는 로그 파일이 xml 형태라면 브라우저에서 파싱하고 보여주기에 적합할 것 같다.



음... 가능할까?

시간날 때 한 번 구현해봐야겠다.