首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java Web Start 入門教學:從 JNLP 部署到簽名授權完整實作

     編輯:Java 相關知識

專案目錄結構

webstart/
├── images/     # JNLP 定義的圖示
├── jar/        # 打包後的 jar 檔
├── jnlp/       # *.jnlp 描述檔
├── src/        # Java 原始碼
└── WEB-INF/
    ├── classes/  # 編譯後 class
    └── web.xml   # Web 應用描述檔

七步驟建立 HelloWorld Web Start 應用

  1. 撰寫 jws.HelloWorld(Swing 視窗),含 main() 啟動入口。
  2. 編譯並打包:jar cvf helloworld.jar jws/*.class,放入 jar/jws/。
  3. 解壓 MANIFEST.MF,加入 Main-Class: jws.HelloWorld,更新回 jar:jar umf MANIFEST.MF helloworld.jar。(若 JNLP 指定 main-class 可省略)
  4. 撰寫 HelloWorld.jnlp:指定 codebase、title/vendor、icon、j2se version、jar href、application-desc main-class、offline-allowed。
  5. 建立 index.html 連結 jnlp/HelloWorld.jnlp。
  6. WEB-INF/web.xml 最小內容 <web-app/>,放入 Tomcat webapps/webstart 啟動。
  7. 瀏覽 index.html 點擊連結,啟動 Swing 視窗與 Java Console 驗證。

本地檔案存取:JAR 簽名與權限提升

  1. 程式碼中使用 File 操作本地檔案。
  2. keytool -genkey 產生金鑰庫(mykeystore),設定別名、密碼、有效期。
  3. jarsigner -keystore mykeystore helloworld.jar mykey 簽名(產生 MYKEY.SF/DSA)。
  4. JNLP 加入 <security><all-permissions/></security>,否則啟動報安全錯誤。
  5. 重新部署測試,確認本地檔案建立成功。

Tomcat 5.5+ 無需在 web.xml 額外設定 MIME mapping。完整參數請參考 Sun 官方 JNLP Spec 與 javaws 文件。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved