Nexaweb Launcherへの移行
Oracle社のJDKの新しいリリースモデルの発表と、サポートロードマップの発表によってJava Applet及びJava Web Startの機能が将来のJavaリリースでは削除されます。
この結果、Nexaweb Applicationの起動環境として利用されていた Java Applet 及び Java Web Start環境が利用できなくなるため、Nexaweb ApplicationをJava Web Startで起動する手段の代替ソリューションとして「Nexaweb Launcher」を提供します。
※Nexaweb LauncherはJava Appletベースのアプリケーションを直接代替するわけではありません。詳細については「Nexaweb Launcher」のページを参照ください。
このドキュメントでは、Nexaweb ApplicationをNexaweb Launcherに移行する手順をガイドします。
- Nexaweb Launcherは、オープンソースプロジェクトのGetDownを内部的に使用しています。GetDownの詳細については、GetDownの公式サイトを参照してください。
- Nexaweb Launcharの詳細については、Nexaweb Launcherを参照してください。
- Nexaweb Standalone Clientの詳細については、スタンドアロンクライアント参照してください。
前提条件:
- バージョン4.5.66以上のNexaweb Platformを使用
- クライアント端末へのNexaweb Launcherの事前インストール
Nexaweb DownloadページでNexaweb Launcherのインストーラを見つけることができます。
ステップバイステップガイド :
1. Nexaweb ApplicationをNexaweb Launcherで起動するための「run.nexaweb」ファイルを作成します
Nexawebランチャーを使用してNexawebアプリケーションを展開するには、Nexawebスタンドアロンクライアントを使用します。手順は次のとおりです。
Nexaweb Webアプリケーションを作成する方法は、サーバーに展開されたrun.nexaweb(Nexaweb Launching Protocol)ファイルを使用する方法です。ユーザーがブラウザで.nexawebファイルのURLを入力すると、アプリケーションは応答が.nexawebファイルであることを検出し、.nexawebファイルの設定に従ってNexaweb Launcherを起動します。したがって、Nexaweb Applicatoinのために.nexawebファイルを作成する必要があります。
- Nexaweb Platform(4.5.65.0009以降)の最新バージョンをダウンロードし、開発環境にインストールします。
- 開発環境にNexaweb Launcherをダウンロードしてインストールします。
- 以下のように、NexawebImages.jar、NexawebStandaloneClient.jar、およびその他のすべてのJARファイルをWebContentディレクトリにコピーします。
注意: NexawebStandaloneClient.jarおよびNexawebImages.jarは、Nexaweb Platformがインストールされているbinディレクトリにあります
b. web.xmlを編集して、「/runNexaweb」URLマッピングを以下のように追加します。
<servlet> <servlet-name>RunNexaweb</servlet-name> <display-name>RunNexaweb</display-name> <description/> <servlet-class>com.nexaweb.server.jnlp.replacement.RunNexawebServlet</servlet-class> </servlet>
<servlet-mapping> <servlet-name>RunNexaweb</servlet-name> <url-pattern>/runNexaweb</url-pattern> </servlet-mapping>
c. プロジェクトをWebサーバーとして実行し、URL:「http://localhost:8080/nxRunNexaweb/runNexaweb」に移動し、「run.nexaweb」としてファイルを保存します。
2. jarsをダイジェストし、digest.txtとdigest2.txtを作成してnexawebアプリケーションにアップロードします
Nexawebランチャーは、GetDownのダイジェスターを使用してJARのダイジェストを生成し、ダイジェストを使用して新しいバージョンのjarファイルをダウンロードする必要があるかどうかを確認します。
そのため、開発者はNexaweb Launcherで実行可能なアプリケーションの配備のために事前に必要なJARファイルのダイジェストを作成する必要があります。
1-c.の手順でダウンロードした「run.nexaweb」ファイルのファイル名を「getdown.txt」に変更し、作業用ディレクトリに配置します。
同様にクライアント側で使用する全てのJARファイルを作業用フォルダに配置します。
例えば、「target」という名前の作業用フォルダを使用して作業する場合、以下のような手順になります。
a. Nexaweb Launcherのインストールフォルダからgetdown-1.7.1-SNAPSHOT.jarを「target」フォルダへコピーします。
b. ステップ1-eのrun.nexaweb ファイルを「target」にコピーします。
c. 「target」フォルダの下に「digesters」サブフォルダを作成し、 このフォルダにrun.nexawebファイルを 再度コピーし、ファイル名を「getdown.txt」に変更します(注:名前を変更した後にファイル拡張子が.txtかどうかを確認してください)
d. 「digesters」フォルダにNexawebImages.jarとNexawebStandaloneClient.jarをコピーします。
e. ClientClassLoaderディレクトリに上記のJAR以外のすべてのJARファイルをコピーします。「digesters」フォルダは次のようになります。
注:デモプロジェクトでは、test.jarという外部ジャーが使用されています。ClientClassLoaderディレクトリの下に置かれます。
これは以下の通りです。プロジェクトでNexawebImages.jarおよびNexawebStandaloneClient.jar以外のJARファイルが必要ない場合は、ClientClassLoaderディレクトリを作成する必要はありません。
f. コマンドラインで以下のコマンドを実行してください:
1. コマンドプロンプトを「target」フォルダに変更します。
2. コマンドプロジェクトで以下のコマンドを実行します。
java -classpath getdown-1.7.1-SNAPSHOT.jar com.threerings.getdown.tools.Digester digesters
下のスクリーンショットのように2つのダイジェストファイルが作成されます。
g. これらの2つのダイジェストファイルを以下のようにNexawebプロジェクトのWebContentフォルダにコピーします。
h. Nexawebプロジェクトを再起動すると、Nexawebランチャーに必要なすべての設定が完了します。
注:JARファイルが変更された場合は、再度ダイジェストファイルを作成する必要があります。
i. Nexaweb LauncherでNexaweb Applicaionを起動するには「http://<your host>:<your port>/<your application>/runNexaweb」にブラウザでアクセスします。
例えば、
サーバー名(<your host>)が「localhost」
ポート番号(<your port>)が「8080」
コンテキストパス(<your application)が「nxRunNexaweb」
の場合、以下のURLにアクセスするとNexaweb Launcherの起動ファイルがダウンロードされ、拡張子関連付けアプリケーションとしてNexaweb Launcherでアプリケーションを起動できます。
http://localhost:8080/nxRunNexaweb/runNexaweb
GetDownのコンフィグレーション :
Nexaweb Launcherを用いる場合、GetDownのコンフィグレーションを使用する事ができます。
Nexaweb LauncherでGetDownのコンフィグレーションを使用する場合は、「\WebContent\Nexaweb\jsp\getdown\runNexaweb.jsp」の内容をカスタマイズする事で実現できます。
「runNexaweb.jsp」はGetDownコンフィグレーションファイルのテンプレートになります。
このため、「runNexaweb.jsp」ファイルに以下のGetDownのコンフィグレーションファイルである「getdown.txt」の設定内容を追記することでGetDownのコンフィグレーションをNexaweb Launcherに適応することができます。
https://github.com/threerings/getdown/wiki/Getdown-Dot-Text