JavaFX로 구현한 Application을 Webstart로 배포하는 방법입니다.
Applet에서도 JDK 버전이나 보안, Signing Jar 등의 문제가 있었는데 Webstart도 비슷한 문제점들이 있을듯 합니다.
1. JavaFX로 Application을 구현했고, Webstart로 배포하려면 JDK의 javafxpackager.exe로 패킹해야합니다. PATH에 <JDK_HOM>/bin이 지정되어 있지 않다면 PATH 환경변수에 추가하세요.
2. JavaFX 프로젝트 폴더에서 아래의 명령을 실행합니다.
(1) -appclass : JavaFX의 패키지명과 Main클래스명
(2) -name : 이름
(3) -width, -height : JavaFX Application의 윈도우 폭과 높이
javapackager -makeall -appclass application.Main -name testJavaFX -width 600 -height 600 |
No base JDK. Package will use system JRE.
No base JDK. Package will use system JRE.
Creating app bundle: testJavaFX in D:\Project\01.TRANSYS\01.DEV\workspace\testJavaFX\dist\bundles
Result application bundle: D:\Project\01.TRANSYS\01.DEV\workspace\testJavaFX\dist\bundles
Detected [iscc.exe] version 0 but version 5 is required.
Bundler EXE Installer skipped because of a configuration problem: Can not find Inno Setup Compiler (iscc.exe).
Advice to fix: Download Inno Setup 5 or later from http://www.jrsoftware.org and add it to the PATH.
Bundler MSI Installer skipped because of a configuration problem: Can not find WiX tools (light.exe, candle.exe).
Advice to fix: Download WiX 3.0 or later from http://wix.sf.net and add it to the PATH.
3. javafxpackager.exe를 실행하면 아래와 같이 JavaFX 프로젝트 폴더에 dist 폴더가 생성됩니다.
4. 아래와 같이 html, jar, jnlp 파일이 생성되었으며, 해당 파일을 웹콘텐츠폴더에 복사합니다.
5. 아래와 같이 Dynamic Web 프로젝트에 hello 폴더에 dist.html, dist.jar, dist.jnlp 파일을 복사 후 웹서버(Tomcat)을 실행합니다.
6. 브라우저에서 <HOST>/hello/dist.html 페이지를 열어서, click to launch this app as webstart 링크를 클릭합니다.
7. 아래와 같이 Web Launcher를 실행하겠다는 메세지가 표시되며, 예를 클릭합니다.
8. JDK 또는 JRE이 최신버전이 아닌 경우 아래의 메세지가 표시되며, 업데이트를 수행합니다.
9. 최신 Java를 설치하고, 컴퓨터를 다시 시작하세요.
10. 위의 6번에서 click to launch this app as webstart 링크를 클릭하면 아래와 같이 Java 보안으로 Application이 차단되었다고 메세지가 표시됩니다.
11. Java 보안 문제를 해결하기 위해서는 Java 제어판에서 예외 처리 사이트를 등록해야 합니다.
제어판에서 Java를 클릭합니다.
12. Java 제어판의 보안 탭에서 사이트 목록 편집을 클릭합니다.
12. 예외사항 사이트 목록 화면에서 추가버튼을 클릭하여 URL을 등록합니다.
13. 위의 6번에서 click to launch this app as webstart 링크를 클릭하면 서명되지 않은 애플리케이션이라는 메세지가 표시되는데, dist.jar파일에 서명을 하지 않아서입니다. 보안 경고 화면에서 실행을 클릭합니다.
14. 아래와 같이 JavaFX로 구현한 Application이 실행됩니다.
'Java' 카테고리의 다른 글
Java DecimalFormt의 올림, 내림, 반올림 적용 (0) | 2020.07.16 |
---|---|
이클립스에 Github 프로젝트 연동하기 (0) | 2019.12.15 |
JavaFX Scece Builder 설치 및 이클립스 설정 (0) | 2019.09.05 |
JavaFX 이클립스 설정 (0) | 2019.09.05 |
Java SimpleDateFormat 패턴 (0) | 2018.03.27 |
댓글