今週からJava SE 6u10の最も重要な機能である次世代Java Plug-inについて紹介します。

次世代Java Plug-in

Javaの黎明期,Javaといえばアプレットを意味していました。Netscape NavigatorでJavaが採用されたのが1996年1月です。それまでのWebページは全く動きがない静的なページだったのに対し,アプレットを使うことで動きのあるWebページを作成することができたのでした。

しかし,Javaのメインストリームはクライアントサイドからサーバーサイドに移行し,アプレットは忘れ去られた存在になってしまいました。

アプレットが廃れてしまった理由はいくつかあります。主な理由を次に示しました。

  • アプレットのダウンロード時間
  • Java Plug-inの起動時間
  • ブラウザと同じプロセスでのJava Plug-inの実行

当時のネットワークは今のように高速ではなく,とても低速でした。そのため,アプレットをダウンロードするために多くの時間を費やさなければなりませんでした。また,コンピュータも今と比べれば非力であり,Java Plug-inを起動させるにも時間がかかっていました。

これではユーザーがそっぽを向くのもしかたありません。

また,ブラウザと同じプロセスのため,Java Plug-inが使用できるヒープ量が制限されるなどの制約がありました。それだけでなく,アプレットの障害によりブラウザがストップしてしまうなどの問題もありました。

しかし,時代は再びクライアントサイドに傾きつつあります。そこで,今までのアプレットの評判を挽回すべく登場したのが次世代Java Plug-inです。

次世代Java Plug-inは以下のような特徴を持ちます。

  • ブラウザと異なるプロセスでの実行
  • アプレットごとのJava VMオプションの設定
  • 大規模ヒープのサポート
  • JNLPのサポート
  • クロスドメインXMLのサポート
  • Java/JavaScriptの連携改善

また,実験的な機能として次の機能が提供されています。

  • ドラッガブルアプレット

このような機能を持つ次世代Java Plug-inがサポートしているプラットフォームとブラウザは以下の通りです。

  • Windows XP/Vistaで動作するInternet Explorer 6および7
  • Windos XP/Vista,Solaris,Linuxで動作するFirefox 3

正式にはサポートされていませんが,IE 8でも使用することが可能です。

今のところJREには旧来のJava Plug-inと次世代Java Plug-inの両方が含まれています。Wndowsではデフォルトで次世代Java Plug-inが動作するようになっています。

Windowsで旧来のJava Plug-inを使用するには,Javaコントロールパネルから行います。Javaコントロールパネルはコントロールパネルから起動することができます。

Javaコントロールパネルが起動したら,上部にあるタブのうち[詳細]を選択します。すると,設定のツリーが表示されるので,Java Plug-inを展開します。展開すると,図1に示したように「次世代のJava Plug-inを有効にする(ブラウザの再起動が必要)」がチェックされていることがわかります。このチェックをはずし,[適用]もしくは[了解]ボタンをクリックします。

ブラウザが起動中であれば,ブラウザを再起動することで旧来のJava Plug-inを使用することができます。

図1●Javaコントロールパネル
図1●Javaコントロールパネル
[画像のクリックで拡大表示]

SolarisとLinuxの場合,コントロールパネルのようなツールがないので,手動で次世代Java Plug-inのインストールを行います。

JREをインストールしたディレクトリにを/usr/local/java/jreとすると/usr/local/java/jre/lib/{i386, sparc}/libnpjp2.soファイルが存在します。このlibnpjp2.soファイルのシンボリックリンクを~/.mozilla/pluginsディレクトリに作成します。i386とsparcはコンピュータのCPUに依存します。

旧来のJava Plug-inに戻す場合,まずlibnpjp2.soファイルへのシンボリックリンクを削除します。そして,/usr/local/java/jre/plugin/{i386, sparc}/{ns7, ns7-gcc29}/libjavaplugin_oji.soファイルへのシンボリックリンクを先ほどと同様に~/.mozilla/pluginsディレクトリに作成します。ns7-gcc29はgcc 2.9でコンパイルされたFirefoxの場合に使用します。

では,次節から次世代Java Plug-inの機能を紹介していきます。