Java Web StartとJClientアプリケーションについて

Java Web Startは、Sun社が開発した新しいアプリケーション・デプロイ・テクノロジです。JDeveloperでは、Java Web Startテクノロジの基礎となっているXMLベースのJNLP(Java Network Launching Protocol)定義の作成をサポートします。Java Web StartおよびJDeveloperのJClient Java Web Startウィザードを使用すると、メンテナンスはWebサーバー上で行い、ダウンロードと実行はクライアント・マシンで行うよう、JClientのアプリケーションおよびアプレットを設定できます。

注意: JDeveloperでJava Web Startを使用してJClientアプリケーションを起動するには、http://java.sun.com/products/javawebstart/ja/index_ja.htmlからJava Web Startソフトウェアをダウンロードしてクライアントにインストールする必要があります。JClientアプリケーションを使用するエンド・ユーザーも、各自のマシンに同じソフトウェアをインストールする必要があります。

Java Web Startテクノロジの用途

Web中心のJavaアプリケーションをデプロイするアプレット方式とは異なり、Java Web Startでは、アプリケーションJARファイルのダウンロードの実行をWebブラウザには依存しません。かわりに、Webブラウザを介してJava Web Start JNLP記述子がダウンロードされ、次にJava Web Startがアプリケーション・リソースをダウンロードします。JNLP記述子は、Java Web Startを起動して実際のダウンロードを実行させるはたらきをします。

使用されているテクノロジについて、次に説明します。

Java Web Startソフトウェアがユーザーのマシンにインストールされていれば、個々のユーザーはWebページのリンクをクリックするだけでJClientアプリケーションおよびアプレットを実行できます(JNLPファイルを動的に生成するように指定すると、JClientウィザードにより適切なファイルが生成されます)。 アプリケーションの起動後は、Webブラウザは閉じてもかまいません。アプリケーションの実行はその後も続きます。

ユーザーのマシンにアプリケーションがない場合、Java Web Startはアプリケーション・ライブラリが格納されているWebサーバーから必要なファイルをすべて自動的にダウンロードします。ダウンロードされたファイルはクライアント・マシンにキャッシュされるため、その後はデスクトップのアイコンまたはブラウザのリンクのどちらからでも、いつでもアプリケーションを起動できます。Java Web Startは必要に応じて更新を行うため、最新バージョンのアプリケーションが常にユーザーに提供されます。

JClient Java Web Startウィザードで作成されるファイル

JClient Java Web Startウィザードを実行する前に、<jdev_install>¥BC4J¥bin¥create_jclient_ear.bat(Windows NTの場合)、または<jdev_install>/BC4J/bin/create_jclient_ear.sh(Unixの場合)を実行し、次のようなbc4jlibs.earアーカイブ・ファイルに含めるBC4Jライブラリを生成する必要があります。

Java Web StartによるWebサーバーからのファイルのダウンロードをサポートするため、JClient Java Web Startウィザードでは次のファイルが作成されます。

さらに、JClient Java Web Startウィザードでの選択に応じて、次のようにJNLP定義が静的ファイルとして、または.jspファイルを介した動的ファイルとして作成されます。

JDeveloperの組込みWebサーバーを使用したJava Web Startによる実行

JDeveloperには、OC4J Webサーバーが組み込まれています。このサーバーを使用して、Webアプリケーション・アーカイブのデプロイおよびJava Web Startによるダウンロードをシミュレーションできます。JDeveloperでは、クライアント・マシンで実行されるコンポーネントのアーカイブ(シンプル・アーカイブ)およびWebサーバーにデプロイされるコンポーネントのアーカイブ(Webアプリケーション・アーカイブ)に際して、J2EEのデプロイメント・プロファイル規則に従います。

注意: JDeveloper内でJava Web Startを使用してJClientアプリケーションを実行する場合には、デフォルトのローカル・デプロイ・ランタイム構成を使用してください。ローカル・デプロイ・ランタイム構成を使用すると、リモートのデプロイ・ランタイム構成で発生する可能性のある潜在的なセキュリティ競合を回避できます。後でリモートのOC4JまたはVisiBroker Webサーバーにビジネス・コンポーネントをデプロイする場合には、JNLPファイルでのセキュリティ権限の付与とJARファイルの署名が必要になることがあります。

JClient Java Web Startウィザードの実行後は、Antビルドファイルctbuild.xmlを実行するだけでJDeveloperの設定が完了します。

注意: JDeveloperに組み込まれたWebサーバーを使用する場合は、生成されたclient_warをデプロイする必要はありません。プロジェクト・フォルダ内のpublic_htmlディレクトリの中身を指定する、デフォルトのweb.xml定義が用意されています。

埋込みOC4J Webサーバーの設定を完了したら、生成された .htmlファイルを使用してJDeveloperからJava Web Startソフトウェアを起動できます。Java Web Startは、.jnlpファイルで識別されるコンポーネントをダウンロードします。.jnlpファイルには、JClientがアプリケーションとして実行されるのか、または安全なアプレットとして実行されるのかも指定されています。Java Web Startを起動してダウンロードが完了した後は、Webブラウザを閉じても、アプリケーションまたはアプレットを継続して実行できます。

外部OC4J Webサーバーへのデプロイ

OC4J Webサーバーへデプロイする準備ができたら、生成済のbc4jlibs.earアーカイブ・ファイルを使用して、JClientアプリケーションで必要な各種のランタイム・ライブラリに対するコンテキスト・ルートを設定する必要があります。これらのライブラリはアプリケーションの実行に必要で、HTTPを介してアクセスできる必要があります(コンテキスト・ルートが、たとえば"BC4J"である場合、bc4jmt.jarhttp://mymachine:8888/BC4J/lib/bc4jmt.jarとしてダウンロードできるようになります)。

JClientアプリケーションのデプロイは、次の2段階のステップで行います。

  1. bc4jlibs.earをデプロイし、Java Web StartでHTTPを介してダウンロードできるよう、ランタイム・ライブラリを設定します。
  2. 生成されたclient_warをデプロイして、アプリケーションに固有のクラスを設定します。


Java Web StartとJClientアプリケーションの使用
JDeveloperでのWeb Startを使用したアプリケーションおよびアプレットの実行
Java Web Start用のJClient Webアプリケーション・アーカイブのデプロイ

JDeveloperの埋込みOC4Jの構成ファイルについて
OC4Jデプロイメント・アプリケーション・ディレクトリ構造
Business Components for Java(BC4J)のデプロイについて
Oracle9i Application Serverへのデプロイについて
J2EEアプリケーションおよびそれらのパッケージとデプロイについて

Java Web Startの詳細は、次のjava.sun.comのWebページを参照してください。

http://java.sun.com/products/javawebstart/ja/index_ja.html