Java Web StartとかJNLPとか
ここ数日、求職のことで悶々としながらも、Java関連の技術についていろいろ調べていました。
以下、分かった(?)ことをつらつら書いてみます。間違っている可能性も大いにあるので、鵜呑みにしないでください。
- Java Web Start:JavaアプリケーションをWebから簡単に実行できる技術。→デスクトップアプリ関連
- Java Plug-in:主にJavaアプレットの技術。→Webアプリ関連
- JNLP:Java Web Start向けの技術だったが、最近Java Plug-inもこれに対応した。
くるくる3Dデモを材料にして実験してみて、得られた知見は、
- javax.jnlp.*のAPIドキュメントは、その他諸々の標準APIドキュメントと一緒になっていない。Java Web Start関連のドキュメントからたどる必要がある。
- javax.jnlp.*のAPIを使ったアプリケーションは、java -jar (jarファイル名)のような方法で動かそうとしても動かない模様。
- Java Web Startアプリケーション用のJNLPファイルは、相対URLを受け付けない模様。そのため、テスト時でもちゃんと絶対URLでJNLPファイルを書いた上、Web上に配備してやる必要がある。
- アプレット向けのJNLPファイルは相対URLを受け付けるので、ローカルでテストできる。
- javax.jnlp.FileSaveServiceを使ったアプリケーションをJRE 6u7の環境で実行したところ、ファイル名を指定して保存ボタンを押したにも関わらず、ファイルが保存されなかった。(エラーになるわけでもない) JRE 6u11にして再度実行したところ、正常に保存された。相当新しい環境じゃないとまともに動かない??
- どっちみち、javax.jnlp.*を使ったアプレットを動かすのにもJRE 6u10以上が必要なので、ユーザーには「最新のJREを入れてください」で押し切るしかない??