XPLATFORMはRIAの運用及び開発環境を提供するRIAのプラットホームです。XPLATFORMは大きくXPLATFORM言語、開発環境、応用プログラムの実行環境、配布環境の4種類で分類します
XPLATFORMの記述の構成
XPLATFORM応用プログラムの実行及び適用のために4種類の内容を知らなければなりません。その4種類は、XPLATFORM言語、開発環境、応用プログラムの実行環境、配布環境です。
XPLATFORM言語
XPLATFORMは、応用プログラムのUIを定義するためにいくつかの言語を提供しています。この言語はXML及びECMAスクリプトを基盤として定義されています。
XPLATFORM XMLでUI画面を配置し、ECMAスクリプトでUIのロジックを実行します。その他、応用プログラムの実行のための実行環境の設定情報もXMLを使用します。
以下は、XPLATFORM言語で作成する主要ファイルです。
ファイルの種類 | ファイル名 | 用途 |
---|---|---|
画面 フォームの定義 | *.xfdl | - 応用プログラムが使用する画面のフォームを定義します。 - コンポーネントの画面配置情報を格納しています。 - イベントのハンドリング方式のUIロジックを格納しています。 |
応用 プログラムの定義 | *.xadl | - 応用プログラムを定義します。 - 応用プログラムの実行のための環境情報を格納しています。 - フォームの配置情報を格納しています。 - 応用プログラムのUIモデルの情報を格納しています。 UIモデルには3つの方式(MDI,SDI,ウィジェット)があります。 |
応用 プログラムの資源の 定義 | default_typedef.xml | - 応用プログラムが使用する資源を定義します。 - 応用プログラムが使用するコンポーネントを定義します。 - 応用プログラムが使用するデータソースを定義します。 - 応用プログラムが使用するモジュールの配布情報を定義します。 |
開発環境
XPLATFORMは、WYSIWYG基盤のRAD開発ツールであるUX-Studioを提供します。開発者はUX-Studioを使用して全ての応用プログラムを開発することができます。該当の応用プログラムはXPLATFORM言語で保存されます。
UX-StudioはMS Windows基盤で動作し、開発が完了した応用プログラムは多様なデバイス(PC, PDA, SmartPhone, Linuxなど)で動作します。
応用プログラムの実行環境
UX-Studioで開発したプログラムはXPLATFORMランタイムが実行します。XPLATFORMランタイムの実行UIは、アプリケーションモデル(フレームやウィジェットなど)によりそれぞれ異なる形態で表示されます。
XPLATORMの応用プログラムはクライアントで動作しますが、データ処理のためにアプリケーションサーバーを使用します。一般的には、ウェブアプリケーションサーバーを多く使用します。XPLATFORMはアプリケーションサーバー用のAPIで、X-APIモジュールを提供します。
XPLATFORMランタイムとエンジン
今後、“XPLATFORMランタイム”と“XPLATFORMエンジン”という用語がよく使われます。簡単に説明すると、XPLATFORMエンジンはXPLATFORMのコアで、XPLATFORMランタイムは、XPLATFORMエンジンにコンポーネントやオブジェクトを含むRIAプラットホームです。
配布環境
配布とは、応用プログラムの実行のために必要なプログラムを使用者のPCまたは端末機に設置する作業を意味します。配布の対象はUX-Studioで、開発したプログラムと応用プログラムの実行に必要なモジュール(XPLATFORMエンジン、コンポーネントなど)です。
配布はHttpプロトコルを使用します。即ち、配布するためにはHttpサーバーがなければなりません。使用者のPCに全てのプログラムを事前に設置した場合には、配布の必要がありません。
配布の対象を羅列すると以下の通りです。
分類 | 主要ファイル名 | 説明 |
---|---|---|
エンジンの配布 | XPLATFORM9_SetupEngine.exe XPLATFORM9_SetupEngine.cab |
|
コンポーネント オブジェクトの 配布 | *.dll |
|
応用 プログラム | *.xfdl *.xadl default_typedef.xml globalvars.xml |
|
XPLATFORMの実行フロー
下の図は、XPLATFORMの配布と実行をフローチャートで表したものです。ここでは、多く使用されるウェブブラウザによる実行フローを表示しました。
XPLATFORMサービスの実行のためにはXPLATFORMエンジンの設置が先に行われなければならず、一般的にはウェブブラウザにより設置します。ウェブブラウザによる設置を望まない場合には、別途の単独設置ファイルによりXPLATFORMエンジンを設置することができます。XPLATFORMは、ウェブブラウザ用の設置ファイル(XPLATFORM9_SetupEngine.cab)と単独設置ファイル(XPLATFORM9_SetupEngine.exe)の2種類のタイプを提供します。
XPLATFORM ランタイムとエンジン
XPLATFORMエンジンは、応用プログラムの実行の主体でありXPLATFORMランタイムのコア部分でもあります。
エンジンが実行されてからライセンスチェックが正常に行われればコンポーネントとオブジェクトをロードし、ロードが完了した後の姿がランタイムです。従って、ソフトウェア実行ファイルの観点で見ると、エンジンとランタイムは同一です。但し、エンジンはコンポーネントとオブジェクトを除いたコア部分を意味し、ランタイムはコンポーネントとオブジェクトを含んだ形態を意味します。
XPLATFORMエンジンは3種類の方法により実行することができます。以下はその実行方法です。
ウェブブラウザのJavascriptの組み込みオブジェクトにより実行することができます。
XPLATFORMのランタイムプラグインバージョンを実行する方法です。
ウェブブラウザに組み込まれた形態でエンジンが実行されます。
ウェブブラウザのJavascriptによりXPLauncherで実行することができます。
XPLauncherはウェブブラウザの組み込みオブジェクトです。
XPLauncherにより実行されるランタイムは、ウェブブラウザに組み込まられず独立したウンンドウで実行されます。
単独実行ファイルにより実行することができます。
この場合には、一般的にショートカットを使用します。
ウェブブラウザとは何の関連もありません。
XPLATFORMエンジンは、実行後に以下の作業を順次に実行されます。
XPLATFORMエンジンの主要構成
XPLATFORMエンジンは、コア部分であるバーチャルエンジンの他に5つのマネージャによって構成されています。
以下の表は、それぞれの構成要素の主要機能を説明したものです。
構成要素 | 説明 |
---|---|
バーチャルエンジン | OSに独立的な構造を持つXPLATFORMの基本エンジンで、多様なOSにポーティングできる形態の仮想エンジンです。 |
インスタンス マネージャ | エンジンが動作するにおいて必要なリソース/画面/データ/スクリプトを管理します。 |
コミュニケーション マネージャ | HTTP、HTTPS、ファイルプロトコルを基本とする通信を担当します。 |
CDL マネージャ | スクリプトで開発されたユーザーコンポーネント、ユーザーオブジェクト、コンポジットコンポーネントが動作するようにします。 |
バイナリモジュール マネージャ | XPLATFORMの主要コンポーネントを管理します。 |