ここでは、SUNからJava Web Startについて簡単に説明します。
“Java Web Start is a mechanism for program delivery through a standard
Web server. Typically initiated through the browser, these programs are
deployed to the client and executed outside the scope of the browser.
Once deployed, the programs do not need to be downloaded again, and they
can automatically download updates on startup without requiring the user
to go through the whole installation process again.”
このチュートリアルでは、ユーザーがダウンロードしたJava Web Start(Jnlp)ファイルを作成し、ダウンロードしたjnlpファイルをクリックして簡単なAWTプログラムを起動する方法を説明します。要約の手順は次のとおりです。
-
シンプルなAWTプログラムを作成し、TestJnlp.jarとしてjarします.
-
TestJnlp.jarにキーストアを追加する
-
Jnlpファイルを作成する
-
Tomcatフォルダにすべてを入れる
-
webからhttp://localhost:8080/Test.JnlpにアクセスしてTestJnlp.jarにアクセスします.
じゃあ始めよう
1. JDkとTomcatをインストールする
Java JDK/JREバージョン1.5以上、Tomcatをインストールしてください。
2.ディレクトリ構造
この例のディレクトリ構造。
リンク://wp-content/uploads/2008/08/jnlp-tutorial-1.png[
]
3. AWT Jnlp
`TestJnlp.java`の内容を見てください。これはAWTをサポートしている単なるAWTプログラムです。
package com.mkyong; import java.awt.** ; import javax.swing.** ; import java.net.** ; import javax.jnlp.** ; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class TestJnlp { static BasicService basicService = null; public static void main(String args[]) { JFrame frame = new JFrame("Mkyong Jnlp UnOfficial Guide"); frame.setDefaultCloseOperation(JFrame.EXIT__ON__CLOSE); JLabel label = new JLabel(); Container content = frame.getContentPane(); content.add(label, BorderLayout.CENTER); String message = "Jnln Hello Word"; label.setText(message); try { basicService = (BasicService) ServiceManager.lookup("javax.jnlp.BasicService"); } catch (UnavailableServiceException e) { System.err.println("Lookup failed: " + e); } JButton button = new JButton("/"); ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { try { URL url = new URL(actionEvent.getActionCommand()); basicService.showDocument(url); } catch (MalformedURLException ignored) { } } }; button.addActionListener(listener); content.add(button, BorderLayout.SOUTH); frame.pack(); frame.show(); } }
P.S “import javax.jnlp。
;”が見つからない場合は、
JRE/lib/javaws.jar ** にあるjnlpライブラリを含めてください。
4. Jar It
Javaのクラスフォルダがあり、コマンドプロンプトで次のコマンドを使用してJarファイルを作成します
jar -cf TestJnlp.jar ** .**
これにより、すべてのJavaのクラスが ”
TestJnlp.jar
“という名前の新しいjarファイルにパックされます。
5.キーストアを作成する
「testkeys」という名前の新しいキーストアを追加します。
keytool -genkey -keystore testKeys -alias jdc
キーストアのパスワード、名、姓、組織の単位などを入力します。
6.キーストアをJarファイルに割り当てます.
”
TestJnlp.jar
“ファイルに新たにキーストア ”
testkeys
“を添付
jarsigner -keystore testKeys TestJnlp.jar jdc
新しく作成されたキーストアのパスワードを尋ねます
7. JARをデプロイする
”
TestJnlp.jar
“をTomcatのデフォルトのWebサーバーフォルダにコピーします(Windowsの場合 – C:¥Program Files¥Apache¥Tomcat 6.0¥webapps¥ROOT__)。
8. JNLPファイルを作成する
このように新しい
Test.jnlp
ファイルを作成する
<?xml version="1.0" encoding="utf-8"?> <jnlp spec="1.0+" codebase="http://localhost:8080/" href="Test.jnlp"> <information> <title>Jnlp Testing</title> <vendor>YONG MOOK KIM</vendor> <homepage href="http://localhost:8080/"/> <description>Testing Testing</description> </information> <security> <all-permissions/> </security> <resources> <j2se version="1.6+"/> <jar href="TestJnlp.jar"/> </resources> <application-desc main-class="com.mkyong.TestJnlp"/> </jnlp>
9. JNLPファイルをデプロイする
C:\Program Files\Apache\Tomcat 6.0\webapps\ROOT
10. Tomcatを起動する
C:\Tomcat folder\bin\tomcat6.exe
リンク://wp-content/uploads/2008/08/jnlp-tutorial-2.png[
]
11.テストする
URL
http://localhost:8080/Test.jnlp
にアクセスすると、
Test.jnlp
ファイルをダウンロードし、ダブルクリックするだけです。
すべてがうまくいけば、次の出力が表示されるはずです
リンク://wp-content/uploads/2008/08/jnlp-tutorial-3.png[
]
「実行」ボタンをクリックしてAWTプログラムを起動します。
リンク://wp-content/uploads/2008/08/jnlp-tutorial-4.png[
]
-
Note ** + jnlpが応答しない場合、Tomcatのconfフォルダにあるweb.xmlに次のコードを挿入します。
<mime-mapping> <extension>jnlp</extension> <mime-type>application/x-java-jnlp-file</mime-type> </mime-mapping>
リンク://タグ/java/[java]
jnlp