|  | 
  | 
    
      | 
        
          | 
            
              | 
                
                  | AWT스윙GUI |  
                  | 
                    
                      | [1] |  
                      | 
                        
                          |   | 등록일:2008-04-22 11:28:12           (0%) 작성자:
   제목:웹스타트 응용프로그램 - Web Start - 웹에서 스윙 사용하기
 |  |  
                      | V.  웹스타트  응용프로그램 -------------------------
 
 기본적으로  웹스타트  응용프로그램은    SimpleEditor에서  보았듯이  Java2  개발  방법을  사용하며  public  static  void  mina(String[]    arg)의  메인  함수에  의하여  실행된다.    하지만  이러한  응용프로그램을  웹스타트와  같이  자동  다운로드  환경에서  사용하려면  보안    및  공유  환경때문에  다음과  같이  몇가지  고려해야  할  사항이  있다.
 
 -  자바  class화일들은  다운로드가  용이할  수  있도록  모두  JAR  화일로  묶어야  한다.
 
 -  그림  화일이나  추가적인  화일  및  자원을  사용한다면  이  모든  것을  JAR로  묶어야  한다.
 
 -  SandBox  보안  모델을  사용함으로  다음과  같이  Local  시스템  자원을  사용하지  못한다.
 
 .  local  disk  및  native  libarary를  사용하지  못한다.
 .  Network  자원은  자신이  download된  서버로부터  뿐이  사용하지  못한다.
 .  Security  Manager을  설치할  수  없으며,  시스테  프로퍼티를  제한적으로  사용한다.
 
 -  이러한  보안상  제약점을  넘으려면  signed  JAR  화일을  사용해야  한다.
 
 
 
 그럼  SimpleEditor.class를  이러한  사항을  고려하여  배포  준비를  해보도록한다.
 
 우선  SimpleEditor.class를  다음과  같은  JAR  커멘드를  이용하여  .jar  화일로  묶는다.
 
 -----------------------------------
 prompt>  jar  cvf  editor.jar  *.class
 -----------------------------------
 
 이렇게  하면  배포할  수  있는  editor.jar  화일이  생성된다.  만일  클레스  화일  또는  이미지,
 리소스  등  화일이  여러개라면  jar  커멘드를  이용하여  같은  화일에  묶도록한다.
 
 SimpleEditor  프로그램은  화일을  읽거나  저장하기  위하여  local  디스크를  접근한다.
 하지만  일반  jar  화일로는  SandBox  보안  모델  때문에  local  디스크를  접근할  수  없다.
 따  라서  local  disk에  접근할  수  있는  권한을  부여하기  위하여  다음과  같이  jar  화일에  keytool  및  jarsigner를    이용하여  인증서  sign을  할  필요가  있다.  (keytool  및  jarsigner는  JDK1.2  이상  버젼에  포함되어있는  툴이  다.)
 
 
 1.  다음과  같이  keytool  커멘드를  이용하여  teststore  화일에  test  라는  별명으로  새로운  키를  만든다.
 
 ----------------------------------------------------------
 prompt>  keytool  -genkey  -keystore  teststore  -alias  test
 
 keystore  암호를  입력하십시오:    test12345
 이름과  성을  입력하십시오.
 [Unknown]:    editor
 조직  단위  이름을  입력하십시오.
 [Unknown]:    editor
 조직  이름을  입력하십시오.
 [Unknown]:    editor
 구/군/시  이름을  입력하십시오?
 [Unknown]:    editor
 시/도  이름을  입력하십시오.
 [Unknown]:    editor
 이  조직의  두  자리  국가  코드를  입력하십시오.
 [Unknown]:    editor
 CN=editor,  OU=editor,  O=editor,  L=editor,  ST=editor,  C=editor이(가)  맞습니까?
 [아니오]:    y
 
 <test>에  대한  키  암호를  입력하십시오
 (keystore  암호와  같은  경우  RETURN을  누르십시오):    test
 키  암호가  너무  짧습니다.  여섯  글자  이상이어야  합니다.
 <test>에  대한  키  암호를  입력하십시오
 (keystore  암호와  같은  경우  RETURN을  누르십시오):    test12345
 --------------------------------------------------------------------
 
 
 2.  생성된  keystore  화일과  그  화일에  생성된  키를  이용하여  자체  signed  인증서를  생성한다
 
 ----------------------------------------------------------
 prompt>  keytool  -selfcert  -alias  test  -keystore  teststore
 
 keystore  암호를  입력하십시오:  test12345
 ----------------------------------------------------------
 
 
 3.  keystore  화일  teststore에  저장된  키  정보를  보려면  다음과  같이  명령을  주고  암호를  입력한다.
 
 ------------------------------------------
 prompt>  keytool  -list  -keystore  teststore
 ------------------------------------------
 
 
 4.  최종적으로  만들어진  인증서를  이용하여  다음과  같이  jarsigner를  이용하여  jar  화일에  sign한다.
 암호를  물으면  teststore  생성시  사용된  암호를  입력한다.
 
 ------------------------------------------------------
 prompt>  jarsigner  -keystore  teststore  editor.jar  test
 ------------------------------------------------------
 
 
 이  렇게서  만들어진  signed-jar  화일인  editor.jar는  최종적으로  자바웹스타트를  통해서  배포할  수  있는  화일이다.    웹스  타트를  통하여  배포되는  화일이  local  자원이나  network  자원을  이용하려면  모두  이렇게  signed-jar를  만들어야  한  다.
 
 이렇게  JAR화일을  준비하면  응용프로그램은  배포  준비가  완료된  것이다.    하지만  이렇게  응용  프로그램만  준비한다고  해서  모든  과정이  끝난  것은  아니다.
 
 우선  이  프로그램이  어떤  것이고  어떻게  배포될지를  기술하는  XML  문법으로  이루어진  jnlp  화일이  필요하고,  jar와  jnlp을  적절이  설정된  웹서버에  올리는  과정이  필요한다.
 
 이러한  내용은  다음  장에서  다루도록  한다.
 |  
                      | [본문링크] 웹스타트 응용프로그램 - Web Start - 웹에서 스윙 사용하기 |  
                      | [1] |  
                      |  |  |  |  |  
  | 
    
      | 코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=7478   |  |  
  |  |  
  |  |  
  |  |  
          |  |  
          |  |  |  |  | 
|  
	
		| 
	
	| Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.   |  |  |