4D v16.3クライアント/サーバーページ |
||
|
4D v16.3
クライアント/サーバーページ
クライアント/サーバーページ
4Dを使用して、クライアントの自動更新をサポートするクロスプラットフォームなクライアント/サーバーアプリケーションをビルドできます。この設定はアプリケーションビルドダイアログのクライアント/サーバーページで行います。 クライアント/サーバーアプリケーションとはダブルクリックで起動可能なサーバーアプリケーションと、そのサーバーに接続可能な専用クライアントアプリケーションの組み合わせを意味します。 クライアント/サーバーアプリケーションをビルドするには以下の3つの項目が必要です:
ビ ルドを行うと、クライアント/サーバーアプリケーションは2つのカスタマイズされたパーツ (サーバーと、各クライアントにインストールするクライアント) で構成されます。比較のために記載すると、ビルドされていない標準の展開時には4D Serverアプリケーション、ストラクチャーファイル、データファイル、リモートモードとして使用する4Dアプリケーションが必要です。 クライアント/サーバーアプリケーションは起動や接続処理が簡易になるようカスタマイズされています:
さらにクライアント/サーバーアプリケーションではクライアント側をネットワーク越しに自動で更新できるよう設定を行うことができます。この点についてはサーバーアプリケーション内部のクライアントアプリケーションをコピーを参照してください。 また、ランゲージコマンドのシーケンスを使用することによって、サーバーパートのアップデートを自動化することも可能です(サーバーまたはシングルユーザー向けアプリの自動アップデート を参照して下さい)。
注: 4D v15以降、4D Serverと4D Volume Desktopのバージョン番号は、4D Developer Editionのバージョン番号と合致する必要があります。例えば、4D Developer v15.4を使用している場合、4D Server v15.4および4D Volume Desktop v15.4を選択する必要があります。 クライアントアプリに、特定のアドレスを使用して(サブネットワーク上にサーバー名が公開されていない)サーバーに接続したい場合、 buildapp.xmlファイル内のWP Import documentXMLキーを使用する必要があります。この点についてのより詳細な情報については、BUILD APPLICATIONコマンドの詳細を参照して下さい。接続失敗時の特定の機構を実装することもできます。提案される別のシナリオについては、クライアントアプリケーションによる接続の管理の章で説明されています。 実行可能クライアント/サーバーアプリケーションビルド中に、4Dは4D Serverフォルダーの内容をServerサブフォルダーに、4D Volume Desktopフォルダーの内容をClientサブフォルダーにコピーします。元の4D Serverと4D Volume Desktopの内容を必要に応じてカスタマイズできます。 例えば以下のようなことが可能です:
注: Mac OSでは4D Serverがパッケージとして提供されます。内容を見るためにはまず (Control+clickしてメニューから選択し) パッケージを開かなくてはなりません。 このオプションでは、組み込みアプリとローカルなデータファイルとのリンクモードを選択する事ができます。二種類のリンクモードが選択可能です。どちらも一長一短なので、必要に応じて適切なモードを選択して下さい。 注: このオプションはアプリケーション配布では新しいアーキテクチャーを使用互換性オプションがチェックされている場合にのみ選択可能です(互換性ページの章を参照して下さい)。
データリンクモードについての詳細な情報については、データリンクモードを設定するの章を参照して下さい。 このエリアのオプションを使用して、新しいバージョンのアプリケーションがビルドされた際の、ネットワーク越しのクライアント/サーバーアプリケーションのクライアント部分更新メカニズムを設定できます。
クライアントアプリケーションの更新は、新しいバージョンの4D Serverを使用する場合になどに必要となります。 ストラクチャーの更新は常に自動で各クライアントマシンに適用される点に留意してください。 自動更新機能を使用すれば、手作業で各クライアントマシンに新バージョンの4Dをインストールする手間を省くことができます。 この設定を有効にしたサーバーが更新されると、各クライアントマシン上に自動で通知が行われます。これは以下のように動作します: アプリケーションビルダーを使用して新しいバージョンのクライアント/サーバーアプリケーションをビルドする際、新しいクライアントはApplicationName Server内のUpgrade4DClientフォルダーに圧縮して格納されます (Mac OSでは、これらのフォルダーがサーバーパッケージ内に配置されます)。クロスプラットフォームクライアントアプリケーションを生成する処理を行った場合、各プラットフォーム用に .4darchive という更新ファイルが含められます: 注: 同時に生成されるarchive.mac と archive.win ファイルは、v13のアプリケーションをv14にアップグレードするために使用されます。BUILD APPLICATION コマンドに対してBuildV13ClientUpgrades XML キーを使用することで、これらのファイルの自動生成を無効化する事ができます。 クライアントアプリケーション更新通知を行うために、古いサーバーアプリケーションを新しいバージョンで置き換えて起動します。残りの処理は自動で行われます。クライアント側では古いバージョンのクライアントが更新されたサーバーに接続を試みると、新しいバージョンが利用可能な旨を表示するダイアログがクライアントマシン上に表示されます。ユーザーはダイアログを受け入れるかキャンセルできます。
更新のダウンロードをキャンセルさせたくない場合、例えば新しいメジャーバージョンの4D Serverを使用するような場合 (この場合古い4Dが4D Serverに接続するこてゃ不可能です)、新しいバージョンのクライアントアプリケーションを各クライアントマシンに必ずインストールしなければなりません。 更新を強制するためには、サーバーアプリケーションと互換性のあるバージョン番号の範囲からクライアントアプリケーションの現在のバージョン番号を除外します。このようにすれば更新メカニズムは更新されていないクライアントからの接続を拒否します。例えばクライアントサーバーアプリケーションの新しいバージョン番号がの6の場合、バージョン番号が5以下のクライアントアプリケーションを許可しないようにできます。 現在のバージョン番号はアプリケーションビルドダイアログのクライアント/サーバーページで設定できます (前述)。接続を許可するバージョン番号の範囲はプロジェクトXMLファイルで指定します。この点に関する詳細はパラメーターのXMLキーを参照してください。 クライアントアプリケーションの更新を実行できなかった場合、クライアントマシンには以下のメッセージが表示されます: "クライアントアプリケーションの更新に失敗しました。アプリケーションは終了します。" このエラーが発生する原因は複数ありえます。このエラーが表示されるような場合はまずいかの点をチェックしてみてください:
クライアント/サーバーアプリケーションをビルドすると、保存先フォルダー内にClient Server executableという名前の新しいフォルダーが作成されているはずです。このフォルダーにはさらに2つのサブフォルダー、ApplicationName ClientとApplicationName Serverがあります: 注: エラーが発生した場合これらのフォルダーは作成されません。そのような場合はエラーの原因を特定するためにログファイル (ログファイル参照)の内容を調べてください。 ApplicationName Client フォルダーにはアプリケーションビルダーが実行されたプラットフォームに対応するクライアントアプリケーションがコピーされます。このフォルダーを各クライアントにインストールします。ApplicationName Serverフォルダーにはサーバーアプリケーションがコピーされます。 これらのフォルダーの内容はカレントのプラットフォームにより異なります:
注: ビルドされたMac OSパッケージの内容を表示するにはアイコンをControl+クリックして、"パッケージの内容を表示"を選択します。 "クライアントの自動更新を許可する"オプションを選択している場合、ApplicationName Serverフォルダー/パッケージには追加でUpgrade4DClientサブフォルダーが作成されます。このフォルダーにはクライアントアプリケーションが圧縮されて格納されます。このファイルは自動クライアントアプリケーション更新時に使用されます。 サーバーやクライアントをWebサーバーとして使用する場合、Webサーバーが使用するファイルを特定の場所に配置しなければなりません:
|
プロパティ
プロダクト: 4D
履歴
変更: 4D v15 R4 タグ 4darchive, .4darchive ARTICLE USAGE
デザインリファレンス ( 4D v16) |