![]() |
Java Pluglet APIby Igor Kushnirskiy & Akhil Arora
Pluglet は JavaTM で書かれた プラグイン である。 Pluglet は Servlet の コンセプトに似ている。違いは、Servlet はコンテンツを供給するが、 Pluglet はそれを消費する。 Java Pluglet API は Mozilla の新しい C++ Plug-in API の、ほぼ 1:1 対応した移植である。
Pluglet は Blackwood プロジェクトの一部分である。プラグイン開発者にとって、 Java Pluglet による Mozilla の拡張を選択することは、 Pluglet に対して Java プラットフォームの持つアドバンテージが適用されることを意味する。 Java でプラグインを書くことは、 すなわち Java 仮想マシン(JVM) が動作する全てのプラットフォームの上で、そのプラグインが動作することである。 同一の機能について比較すれば、Java バイトコードは一般的に、コンパイルされた ネイティブコードよりも小さい。そのため、プラグインのダウンロードに必要な時間は 少なくなる。 よくある質問(FAQ)は、 Applet と Pluglet はどのように違うのか、というものだ。 これについては、 MozillaZine で議論された事がある。 基本的に、2つの違いがある。 Pluglet は、(訳注:ブラウザが)特定の Content Type に遭遇した時に起動されるが、Applet は <applet> タグに遭遇した時に起動される。 もう一つの違いは、Pluglet は Applet とは異なり、ディスク上にインストールされていて、 それぞれの起動毎にダウンロードされない。 Pluglets を有効にする鍵は Pluglet エンジンである。 Mozilla で Pluglet エンジンが起動する仕組みは、 XPCOM サービス と同様である。 Mozilla がある MIME タイプのためのハンドラを取得できなかった時、 Mozilla から Pluglet エンジンに問い合わせが行なわれる。Pluglet エンジンは、適切な Pluglet があればそれに作業を委任する。C++ と Java の間を行き来する際に、いくつかの JNI が関与する場合もある。 我々は、Java の機能を可能な限り反映させうる範囲で、 Plug-in 作成者が新たな API を学習しなくても良いように、Pluglet の API を C++ のそれとできるだけ似たものになるように設計した。別のアダプターを用いて、よりクリーンな、Java らしい Plug-in API をデザインする事は容易だが、我々はこの選択を優先するべきであると考えた。 必要なものこのセクションはあなたが pluglet プロジェクトをビルドする前に 必要となるものについて書いている。
コードの取得とビルドコードの取得
コードをビルドする
Pluglet サービス バイナリ以下のプラットフォームではバイナリが入手できる。 これは、利便性の目的で提供されており、動作を保証するものではない。
あなたは、 Pluglet モジュールの class file をダウンロードする必要がある。
インストール手順
トラブルシューティング
デモとスクリーンショット私達は、4つの有効なデモを持っている。 これは スクリーンショット である。
リファレンス |
|||||||||||||||||