デスクトップクライアント
Platform 4.2 以上が必要
デスクトップクライアントは、Platform 4.x とは別にライセンスされます。詳細については、Nexaweb の販売部門までお問い合わせください。
デスクトップクライアントの機能により、インストーラをパッケージ化してデスクトップにインストールする Web アプリケーションを作成できます。最も適切と思われる頻度でサーバーと通信し、実行中にオンラインからオフラインへの切り替えができるデスクトップクライアントアプリケーションを開発できます。このプログラミングモデルは、モード (オンライン/オフライン) を通じて一貫性を保ち、デスクトップクライアントは、リモートリソースへのアクセスに使用される API をリダイレクトして、オフライン時にローカルでリソースにアクセスします。これにより、必要時にのみ接続するアプリケーションを作成するのに非常に明確な方法が提供されます。
デスクトップクライアントアプリケーションは、追加の作業を行わずに自動でアップグレードできます。Nexaweb コンポーネントまたはエンドユーザーが構築したコンポーネントの新しいバージョンがサーバー上で利用可能になると、デスクトップクライアントアプリケーションで、利用可能なアップデートプログラムを自動的にダウンロードしてアプリケーションを再起動するようユーザーに通知するメッセージが表示されます。
イメージ
次の表では、デスクトップクライアントに含まれているイメージについて説明します。
デスクトップクライアントのイメージ | 説明 |
Install | ユーザーのシステムにインストールされるイメージ |
Webapp | サーバーサイドの Web アプリケーション |
デスクトップクライアントの Install イメージ
デスクトップクライアントの Install イメージは、デスクトップクライアントを実行するためにインストールする必要があります。
/INSTALL_DIRECTORY nexaweb-desktop-client.launcher.jar /Nexaweb /client /desktopclient /0.0.0.0 nexaweb-desktop-client.jar /Applications /APP_NAME version.txt /FIles /WEB-INF nexaweb-desktop-client.xml
version.txtは、0.0.0.0という形式のテキストを含む、1 行のテキストファイルでなければなりません。
デスクトップクライアントの Webappイメージ
Webapp イメージは、サーバーサイドの Web アプリケーションです。次に示す構造を使用する必要があります。
/ROOT /WEB-INF /client /desktopclient nexaweb-desktop-client.jar // デスクトップクライアントの jar ファイル nexaweb-desktop-client.xml // デスクトップクライアントの設定 nexaweb-desktop-client-deployment.xml // デスクトップクライアントに含まれる内容を記述したデプロイメントファイル
コンフィギュレーションファイル
デスクトップクライアントの設定情報は次のものから取得されます。
- Nexaweb クライアントのブラウザ バージョンを含むnexaweb-client.xml および nexaweb-server.xml コンフィギュレーション ファイル。
- nexaweb-client.xml コンフィギュレーション ファイルの設定をオーバーライドする nexaweb-desktop-client.xml コンフィギュレーション ファイルの設定
たとえば、debug-keys-enabledが nexaweb-client.xml では false に設定されていて、nexaweb-desktop-client.xmlでは true に設定されている場合、デスクトップクライアントでは true に設定されます。
nexaweb-desktop-client コンフィギュレーションファイル デスクトップコンフィギュレーションファイルの nexaweb-desktop-client.xmlには、少なくとも次の内容が含まれている必要があります。
<client-app> <launch-configuration> <initial-page>index.nxml</initial-page> <!-- アプリケーションの起動ページ --> <server>http://localhost:4444</server> <!-- サーバーのアドレス --> <context-path-override>/OfflineFreeChartDemo</context-path-override> <!-- アプリケーションのコンテキストパス ---> </launch-configuration> </client-app>
デプロイメントファイル
次に、デプロイメントファイルのnexaweb-desktop-client.deployment.xml の例を示します。
| <desktop-deployment> - <!-- 次の拡張子で終わるファイルは、ディレクトリ構造を --> - <!-- トラバースする際に無視されます。 --> - <excludes-by-extension> <extension caseSensitive="false">.jsp</extension> <extension caseSensitive="false">.do</extension> <extension caseSensitive="true">.foo</extension> <extension caseSensitive="true">/No</extension> </excludes-by-extension> - <!-- デスクトップクライアントがローカルに保存するリソースです。 --> - <!-- ディレクトリ構造の再帰的リストに、WEB-INF/ と --> - <!-- その下位ディレクトリが自動的に含まれることはありません。 --> - <!-- WEB-INF またはその下位ディレクトリにリソースを含めるには、それらを明示的にリストします。 --> - <!-- --> - <!-- クライアントのクラスパスにあるすべてのリソースとプラグインは、 --> - <!-- それらが WEB-INF にある場合でも、自動的に含まれます。--> - <!-- --> - <!-- 明示的にリストされたファイルはすべて、そのファイル拡張子が --> - <!-- 除外リスト内にあるかどうかにかかわらず、ファイル拡張子に基づいて除外されることはありません。 --> - <resources> <directory recursive="true">/Yes</directory> <directory recursive="true">/WEB-INF/classes</directory> <resource>/No/Hello.txt</resource> <resource>/WEB-INF/web.xml</resource> </resources> </desktop-deployment>
アプリケーションのアップデート
- デスクトップ クライアントはサーバーに接続して、/DesktopManifestServlet のコンテンツを要求します。
このサーブレットは、アプリケーションへのデプロイに必要なものに関する情報を nexaweb-desktop-client-deployment.xml ファイルから取得します。- サーブレットにアクセスできない場合は、キャッシュされているコンテンツに基づいてデスクトップ クライアントが起動します。
- サーブレットにアクセスすると、nexaweb-desktop-client.xml の最終変更時刻が検出されます。
- ローカルの nexaweb-desktop-client.xml の最終変更時刻が、サーバー上にある nexaweb-desktop-client.jar のバージョン番号と比較されます。
- ローカルにキャッシュされているファイルのバージョンが最新のものである場合は、アップデートは実行されません。
- サーバー上にあるファイルの方が新しく、そのバージョ ンがローカルにない場合は、そのバージョンをダウンロードします。ポップアップ ダイアログが表示され、新しいバージョンが利用可能で、アップデート プロセスが完了したら再起動するようユーザーに通知します。次回クライアントを実行するときには、nexaweb-desktop-client.xml の新しいバージョンが実行されます。
- デスクトップ クライアントの新しいバージョンを開くと、アプリケーションの "version.txt" のエントリが変更されます。また、"0.0.0.0" フォルダの横に、新規フォルダが新しいバージョン番号で表示されます。
- デスクトップ クライアントの JAR ファイルがアップデートされると、各関連ファイルが更新されます。
- 変更されたファイルがダウンロードされるときには、進行状況バーが表示されます。
- アップデート プロセスが完了すると、これらの新しいファイルに基づいてアプリケーションが起動します。
JVM バージョン
- JVM 1.3 以上がサポートされています。
- JView はサポートされていません。
- JVM 1.3 で SSL を使用するには、適切な JSSE jar が必要です。
セキュリティ
- HTTPS がサポートされています (JVM 1.3 については、上の注記を参照)。
- デスクトップ クライアントにセキュリティ サンドボックスは装備されていません。したがって、インストールしたアプリケーションは、すべてを実行できる完全な権限付きで実行されます。
Nexaweb で開発されるアプリケーションは、ランダム リンクをクリックして起動するコンシューマ アプリケーションであると考えられていません。ただし、アプリケーションは信頼できる既知のソースから実行されます。たとえば、営業部員は、 Nexaweb で開発された販売用アプリケーションのデスクトップ バージョンを使用するためにロードしますが、これは雇用者によって開発および提供されるものです。