【3/18〜】Amazon、VMwareが語る『クラウドの未来』 スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷


解説


サンの夢を語れるのか?「Java Web Start」


三輪佳子
2000/11/30

 米サンマイクロシステムズは、今年のJava One開催中の2000年6月6日、新しいJavaテクノロジー「Java Web Start」を開発中であることを発表した。そして、今年11月20日、Java Web Start 1.0 Release Candidate版をリリースした。 現在、JDCの会員に向けてhttp://java.sun.com/products/javawebstart/でダウンロード可能になっている。

 Java Web Startは、Webを利用してJavaアプリケーションをユーザーに配布する仕組みである。ユーザーはランチャーを使って、ダウンロードされたJavaアプリケーションを自由に利用できる。Java Web Startは、実は、サンマイクロシステムズがJava誕生前後に語っていた、アプリケーションのネット配信を実現するフレームワークといえる。

 本稿は、Java Web Startの概要とその将来性について、筆者が利用してみての感触も含めて解説しよう。

Java Web Startを利用するための準備とその機能

  Java Web Startを利用するためにクライアント(ユーザー)側で必要な準備は、Java Web StartをJavaの実行環境(JRE:Java Runtime Environment)とともにインストールしておくだけだ。

 サーバ側に必要な準備もごく簡単で、特別なサーバプログラムを導入する必要はない。Webサーバに新しいMIMEタイプとして、JNLPファイルを追加しておけばよい。サーバ側でアプリケーションを配布するのに最低限必要な作業は、Javaアプリケーションを作成してそれをJAR形式にすることとJNLPファイルを作成すること、ユーザーがこれらをダウンロードするための、

<a href="application.jnlp">Java 2 Application</a>

 といったHTML文書を用意することの3点だけである。JNLP APIの利用やJARファイルへの署名は、必要に応じて行えばよい。

 ユーザーが、このアプリケーションを実際に利用する際に必要な手順は、Webブラウザから前述のHTML文書にアクセスし、リンクをクリックするだけだ。すると、Java Web Startが自動的に起動し、JNLPファイルの記述に従ってJAR形式のアプリケーションをダウンロードし、実行する。

 いったんダウンロードしたJavaアプリケーションは、次回からはWebにアクセスせず、クライアントマシンでローカルに実行することができる。アプリケーションがバージョンアップされた場合は、Java Web Startが差分だけをダウンロードしてアップデートする機能もある。

ユーザーにとってのJava Web Startのメリット

  ユーザーにとってのJava Web Startのメリットは、当然ながら、アプリケーションのインストールやアップデートが非常に容易になることだ。Webブラウザでワンクリックすれば、インストール作業はJava Web Startが行ってくれるし、アップデートもJava Web Startに任せておけばよい。さらに今後、必要なJREをJava Web Startが自動的にチェックし、インストールするように発展すれば、エンドユーザーは環境設定の悩みからほとんど解放されるであろう。

 しかもアプリケーションの動作はプラットフォームに依存しない。現在のところ、WindowsとLinuxで動作が確認されている。アプリケーションをダウンロードしインストールする際にプラットフォームを気にせずに済むことのメリットは少なくない。エンドユーザーにかかわるシステム・アドミニストレータ的な立場の人々にとっても、プラットフォームに関する注意を喚起する手間が省けるメリットがあるだろう。

実際に利用してみると

 筆者は、Windows 2000 Serverをプラットフォームに、実際にJava Web Startを利用してみた。Java Web Startは、http://java.sun.com/products/javawebstart/からダウンロードできる。。JDCの会員IDとパスワードを入力してログインすると、ダウンロードから実際の利用までの手順が表示される(画面1)

画面1 Java Web Startのダウンロード画面。ダウンロードできるのはJDCの会員のみである。JDCにはだれもが無償で入会できるので、ぜひ会員に登録してダウンロードしてみてほしい

 最初のステップであるダウンロードに関する解説文の中の「continue」ボタンをクリックし、手順通りにダウンロードする。ファイルサイズは5.9MBと小さくはない。ダウンロードしたファイルをダブルクリックすると、インストーラが起動するので、あとは指示に従ってゆけばよい(画面2)

画面2 Java Web Startのインストーラ。ウィザードの指示に従っていくだけで簡単にインストールできる

 インストールが終了したら、デスクトップとスタートメニューに起動のためのコマンドが登録されるので、これをクリックしてJava Web Startを起動する。起動すると、ランチャー画面「Java Web Start Application Manager」が出現する(画面3)。なお、Java Web Startを起動するには JRE1.2.2 または JRE 1.3.0が必要なので、別途インストールしておく必要がある。

画面3 Java Web Start Application Manager。いちどダウンロードしたアプリケーションは[Applications:]に登録され、クライアントサイドでいつでも起動することができる

 デモ用のJavaアプリケーションは、http://java.sun.com/products/javawebstart/demos.htmlからダウンロードできる。現在、「Draw」、「Notepad test app」、「Military Game」、「SwingSet2 Demo」の4種類がある。ランチャー画面右上の「Group」メニューから「Remote Applications」を選ぶと、ダウンロード可能なアプリケーションが表示される。筆者はこのうち「Draw」を試用してみた(画面4)。これは名称の通りドローアプリケーションであり、簡単な図を作成するのには十分な機能を持っている。

画面4 Drawを試してみた。起動に時間がかかるが、いったん起動するとWindowsアプリケーションと同等の体感速度で利用できた

 ダウンロードと起動には少し時間が必要だ。アプリケーションがWeb上にあることをいや応なく意識せざるを得ない。しかし起動後は、通常のWindowsアプリケーションと同様に利用できる。

 いったんダウンロードしたアプリケーションは、2度目以後はそのマシン上から実行できる。先ほどのランチャー画面右上の「Group」メニューから「Cached Applications」を選択すれば、これまでにダウンロードしたアプリケーションがすべて表示されるので、目的のアプリケーションを実行できる。アプリケーションをWebからダウンロードする時間がカットされる分、当然ながら、起動に要する時間は少なくなる。

Java Web Startの将来は?

 現在公開されているJava Web Startが、例えば実際にASPなどで利用されるためには、ユーザー環境のチェック機能、アプリケーションの起動に要する時間など、クリアされるべき課題が多い。また現在、アプリケーション上では日本語が使用できるが、Java Web Start自体の使用言語は国際化されておらず、JNLPファイルでは日本語が使用できない。2001年初めに公開予定のバージョン1.1では国際化される予定とのことであるが、JNLP バージョン1.0との互換性も完全ではないようだ。

 そもそも、Java Web Startはクライアントマシンで動作するJavaアプリケーションを利用することを前提としているが、いまやクライアントサイドでJavaを使うことにマーケットは否定的だ。Javaのパフォーマンスの悪さが問題視され、Javaアプレットはほとんど使われなくなったし、ビジネスロジックをサーバサイドに置き、ユーザーインターフェイスにはHTMLを利用するサーバサイドJava(ServletやJSP)全盛の時代が到来している。ユーザーに対するサポートやクライアント環境へのメンテナンスが減少する点では、サーバサイドにロジックを置くWebアプリケーションも同様かそれ以上の効果をもたらす。クライアントにはWebブラウザを置き、ロジックはすべてサーバサイドに置くという流れは、だれもが正解と感じているほどの大きな流れだ。その中で、Java Web Startはどのような意味を持つのか?

 一太郎Ark for Javaなどの優秀なJavaアプリケーションも存在するが、まだ実用的ではない。パフォーマンスではネイティブなアプリケーションには勝てないし、なにしろクライアントサイドのJavaアプリケーションを書けるエンジニアが非常に少ない。このようにマーケットが見いだせない中で、1つだけ期待が持てる分野がある。それはモバイルだ。いま携帯電話やPDAが進化し、モバイルコンピューティングの大きな流れをつくりつつある。モバイル機器の場合、ネットに接続されていないオフラインの状態が必ず存在するため、アプリケーションやアプレットといった形態でJavaが利用される可能性が大きいのだ。また、将来の情報家電に接続されるホームサーバ上のアプリケーションなど、リモートでアップデートの必要があるプラットフォームで活用できる可能性もあるだろう。

 サンが夢を描いたJavaアプリケーションのネット配信を実現するJava Web Start。皮肉にも、Javaがクライアントサイドでは地位を築けずにサーバサイドで花を開き始めた今、やっとかたちを見せたわけだ。ただ、1年先の動向さえだれにも読めないインターネット業界にあって、このJavaテクノロジーがどのように活路を見いだすかは分からない。

ホワイトペーパーTechTargetジャパン

Java Solution フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  TomcatやJBossなどAPサーバ環境に関する
情報を集約! “業務”用APサーバ大百科

New!
  一気に解説! 最新のクラスタストレージ
「RAIDを超えたストレージ基準」……など

New!
  クラウド的ユーザー体験の変化は脅威か?
仮想化技術を使いこなす運用管理術を紹介

New!

  上司や部下、部署内メンバーとの情報共有
を“ガラッ”と変えるコラボツールとは?

New!
  おばかアプリ選手権、第4弾開催中!!
ムダにカッコよくてくだらない作品求ム!

  社内ファイルサーバを“クラウド”に統合
VPN直結「クラウド型ストレージ」を紹介

  Twitterのアカウントはなぜ突破された?
メールによる新手の攻撃手法とその対策

  もう仮想化のお試しフェイズは終わりだ!
Hyper-V 2.0が基幹システムも仮想化

  美人!? まあまあ? 気になる いやし系!!
PV急増で「美人時計」がとった手段とは?

  クライアント企業から求められる人材
⇒IT技術と経営戦略を併せ持つ「戦略家」

  .NET編集長が実践する「技術情報検索術」
サンプル・コードを簡単に探す“技”は?

  業務効率と情報セキュリティ対策を両立!
手間なく確実に機密情報を守る方法とは?

  進化を続ける富士通ストレージETERNUS DX
製品開発者の自信を裏付けるものとは何か

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  【CTC事例】約30の基幹システムを統合!
膨大なバッジジョブを制御した方法は?

  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  その数、なんと400台以上! グループ内
サーバの「統合管理」によるメリットは?