JClientのフレームまたはアプレット・クラスについて

アプリケーション・ブートストラップ

ナビゲータで、フレームまたはアプレット・クラスを選択して「実行」でJClientアプリケーションを実行する際に、JClientのブートストラップ・コードで最初に行われる処理の1つが、JUApplicationオブジェクトの作成です。これは次のコードによって行われます。

JUApplication app = JUMetaObjectManager.createApplicationObject("MyJClientProject.ClientDataModel1", null, new JUEnvInfoProvider());

createApplicationObject()の最初のパラメータMyJClientProject.ClientDataModel1は、JUApplicationインスタンスの作成元となるBC4Jクライアント・データ・モデル定義を指定します。JUMetaObjectManagerオブジェクトはこの名前を受け取り、前半部分(MyJClientProject)を使用してクライアント・プロジェクト・ファイル名(MyJClientProject.cpx)を作成します。この .cpxファイルが読み込まれて解析されます。セッション情報が抽出され、JUMetaObjectManagerにキャッシュされます。

次に、Session定義、特にPackageおよびConfigurationの値が抽出されます。情報はアプリケーション・モジュール・プール・マネージャに渡され、アプリケーション・モジュールのインスタンスが作成されます(アプリケーション・モジュール・プールの詳細は、Business Components for Javaのドキュメントを参照してください)。

JClientアプリケーションで使用されるJUApplicationインスタンスは、このアプリケーション・モジュール・インスタンスから作成され、アプリケーション・モジュールに含まれるビュー・オブジェクトにアクセスするためには、JUPanelBindingインスタンスが作成されます。

パネルが特定のビュー・オブジェクトにアクセスし、データ・バインドされるためにはパネル・バインドが必要なため、パネル・バインドの作成はJClientの重要な機能です。パネル・バインドは、すべてのイテレータ・バインドのためのコンテナとして機能します。最終的には、イテレータ・バインド・オブジェクトが、SwingコンポーネントとBC4Jデータソースの行セット・イテレータとの間の対話を受渡しします。

パネル・バインドは、次のコードを介してアプリケーション・オブジェクトに登録されます。これにより同じデータ・バインドを使用するデータの参照とパネルの編集が可能になります。

panelBinding.setApplication(app);

フレームの初期化

JUApplicationがインスタンス化されると、フレームの初期化が行われます。フレームのインスタンスは、JUApplicationを引数とするコンストラクタを起動することで作成されます。このコンストラクタはフレームのステータス・バーを作成し、JUApplication参照をフィールド(app)に保存します。次に、jbInit()をコールし、データ・パネルの初期化を行います。

アプレットの初期化

アプレットのインスタンスが作成されると、アプレットの初期化が行われます。JUApplicationが作成され、フィールド(app)に参照が保存されます。次にjbInit()がコールされ、データ・パネルおよびステータス・バーの初期化が行われます。