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を起動して実際のダウンロードを実行させるはたらきをします。
使用されているテクノロジについて、次に説明します。
javaws http://localhost/myapp/test.jnlp
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ライブラリを生成する必要があります。
bc4jlibs.ear
アーカイブ・ファイル。OC4J Webサーバーへデプロイし、JClientアプリケーションで必要な各種のランタイム・ライブラリに対するコンテキスト・ルートを設定する準備ができた時点で使用します。
注意: ダウンロードされるアプリケーション・リソースの認証を指定する場合は、bc4jlibs.ear
の生成に使用するスクリプトにより、オプションでBC4Jランタイムおよびその他の必要なJARファイルに署名できます。
Java Web StartによるWebサーバーからのファイルのダウンロードをサポートするため、JClient Java Web Startウィザードでは次のファイルが作成されます。
ctbuild.xml
。ビルドファイルを使用して、次のアプリケーション・リソースを生成します。
client.jar
mymt.zip
注意: Antビルドファイルには、外部OC4J Webサーバーへのデプロイが準備できたときにclient.jar
およびmymt.zip
ファイルに署名する便利な機能が追加されました。
client_war.deploy
プロファイル。これを使用して、プロジェクト・フォルダにあるpublic_html
ディレクトリの内容を外部OC4J Webサーバーにデプロイします。したがって、client.jar
およびmymt.zip
と、静的JNLPファイルまたはJSPファイルのどちらかが含まれます。さらに、JClient Java Web Startウィザードでの選択に応じて、次のようにJNLP定義が静的ファイルとして、または.jsp
ファイルを介した動的ファイルとして作成されます。
xxx.jsp
。(JClient Java Web Startウィザードで「Static JNLP」を選択した場合には生成されません)クライアントおよびビジネス・コンポーネントのアーカイブ・ファイルを記述し、JClientがアプレットとアプリケーションのどちらであるを記述した、JNLPファイルを動的に生成します。xxxmt.jsp
。(JClient Java Web Startウィザードで「Static JNLP」を選択した場合には生成されません)1つ目の .jsp
ファイルを拡張するファイル。特定のデプロイ・シナリオで必要なビジネス・コンポーネントのランタイム・ライブラリを記述した、JNLPファイルを動的に生成します。xxx.jnlp
。クライアントおよびビジネス・コンポーネントのアーカイブ・ファイルを記述し、JClientがアプレットとアプリケーションのどちらであるかを記述した、静的なJNLPファイル。xxxmt.jnlp
。(JClient Java Web Startウィザードで「JNLPを動的に生成 - JSP」を選択した場合には生成されません)1つ目の .jnlp
ファイルを拡張するファイル。特定のデプロイ・シナリオで必要なビジネス・コンポーネントのランタイム・ライブラリを記述した、静的なJNLPファイル。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.jar
をhttp://mymachine:8888/BC4J/lib/bc4jmt.jar
としてダウンロードできるようになります)。
JClientアプリケーションのデプロイは、次の2段階のステップで行います。
bc4jlibs.ear
をデプロイし、Java Web StartでHTTPを介してダウンロードできるよう、ランタイム・ライブラリを設定します。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ページを参照してください。