これらのツールは、ビュー・オブジェクトの作成および編集に使用する。デフォルトのビュー・オブジェクトは、ビジネス・コンポーネント・プロジェクト・ウィザード、エンティティ・オブジェクト・ウィザードまたはエンティティ・オブジェクト・エディタおよびビジネス・コンポーネント・パッケージ・ウィザードまたはパッケージ・エディタでも作成できる。
デフォルトのビュー・オブジェクトの定義内容は非常に単純である。このため、ビュー・オブジェクト・ウィザードおよびビュー・オブジェクト・エディタを使用してビュー・オブジェクトを作成し、ニーズに合せて編集する。ここでは、次のものを使用するビュー・オブジェクトを対象とする。
エンティティ・オブジェクトの属性のサブセット
複数のエンティティ・オブジェクトの属性
特殊なSQL導出属性または一時属性
デフォルト以外の記憶領域および更新機能
1つのビュー・オブジェクトで複数の更新可能エンティティ・オブジェクトを使用できることにより、Business Components for Javaの主要な機能の1つが可能になる。この機能は、1つのビュー・オブジェクトで複数のエンティティ・オブジェクトを更新できることである。
ビュー・オブジェクト・ウィザードでビュー・オブジェクトを作成するには、ビジネス・コンポーネント・プロジェクトが開いている状態で、次のいずれかを行う。
「ファイル」->「新規」を選択し、「Business Tier」->「Business Components(BC4J)」を選択して「ビュー・オブジェクト」をダブルクリック
ナビゲータで、ビジネス・コンポーネント・パッケージを右クリックし、「新規ビュー・オブジェクト」を選択
ビュー・オブジェクトを編集するには、ナビゲータでビュー・オブジェクトを右クリックし、「objectの編集」を選択する。または、ファイルをダブルクリックする。
ビュー・オブジェクトを作成する場合、ウィザードを使用して次の情報を指定できる。ここでは、ページごとに説明する。
「名前」ページ。ビュー・オブジェクトを作成するために使用されるエンティティ・オブジェクト(該当する場合)、ビュー・オブジェクトの名前(たとえばentityView)、ビュー・オブジェクトの別名(たとえば名前の競合を避けたりディテール・ビューを無制限ビューと区別したりするため)、各エンティティ・オブジェクトの属性をこのビュー・オブジェクトに対して読取り専用にするかどうか、外部キーを変更したときに外部キーが別のフィールドを参照するようにするかそのフィールド値を更新するか(たとえば、注文入力アプリケーションで、品目IDの変更が、別の在庫品目の注文と在庫品目の品目IDの変更のどちらを意味するか)、ビュー・オブジェクトを配置するパッケージ。更新を実行する場合は、エンティティ・オブジェクトを指定する必要がある。また、情報の結合を取得する場合は、エンティティ・オブジェクトの指定が推奨される。ただし、読込み目的のみでデータを問い合せる場合は、エンティティ・オブジェクトは必要ない。エンティティ・オブジェクトを使用すると更新と検証が可能になり、メモリーにおいて行が一意に保たれる。
「属性」ページおよび「属性の設定」ページ。エンティティ・オブジェクトから含める属性を指定し、新しい属性(一時属性またはSQL導出属性)を定義して属性の設定を指定する。設定では、属性の名前、属性の型、別名、SQL式、更新可能かどうか(常時可能、新規の場合に可能、常時不可能のいずれか)、およびビュー・オブジェクトの問合せで選択されているかどうか、問合せ可能かどうか、を指定する。メモリーを節約してパフォーマンスを向上させると同時に、フォルトインを回避するには、クライアントUIのフォームに必要な属性のみを組み込む。基礎となるエンティティ・オブジェクトが更新可能な場合は主キーを組み込む必要がある。これはウィザードによって行われる。
「問合せ」ページ。オプションで、ビュー・オブジェクトのSQL文をカスタマイズする。WHERE句およびORDER BY句を追加できる。「参照」をクリックし、問合せ結果の順序を決定する属性を選択する。(自動的に生成されたSELECT句およびFROM句など)他の方法で問合せを変更する場合は、「エキスパート・モード」を選択できる。SQL文が文法的に正しいかどうかを検証するには、「テスト」をクリックする。
「属性マッピング」ページ。「エキスパート・モード」を選択したとき、カスタムSQL問合せで列の位置を削除、追加、または変更した場合は、以前のマップは不適切であるため、それらの項目を表示するために問合せ結果列をマップできる。
「Java」ページ。ビュー・オブジェクトをカスタマイズする場合は、ウィザードで、ビュー・オブジェクト・クラスまたはビュー行クラス(あるいはその両方)に対してJavaファイルを生成するよう指定できる。デフォルトでは、ウィザードはビュー・オブジェクト・クラスを生成し、ビュー行クラスを生成しない。
ビュー・オブジェクトを編集する場合、これまでのページの情報の他に、エディタを使用して次の情報を指定できる。
「カスタム・メソッド」ページおよび「カスタム行メソッド」ページ。エクスポートするメソッドを選択する。クライアントは、これらのメソッドをリモートで使用できる。ビュー・オブジェクトのクラス・ファイルに記述したメソッドは、「使用可能」リストに表示される。リストには、シリアライズ可能インタフェースを実装するデータ型のもののみが表示される。メソッドをエクスポートするには、「選択済」リストへ移動する。このページを使用する前に、「Java」ページで、ビュー・オブジェクト・クラスに対して「Javaファイルの生成」を選択する必要がある。クライアントでメソッドを使用する前に、アプリケーション・モジュールをリモート対応にする、クライアント・コードにパッケージをインポートする、クライアント・コード内でメソッドをコールするなどの処理が必要である。これについては、Business Components for Javaのオンライン・ヘルプで説明している。
「プロパティ」ページ。プロパティを追加するには、プロパティ名と値を指定し、「追加」をクリックする。また、既存のプロパティ値の追加および編集、プロパティの削除が可能である。
ビュー・オブジェクトを作成した後でデータベース表を変更し、ビュー・オブジェクトを変更する必要がある場合には、ビュー・オブジェクト・エディタで手動で変更できる。たとえば、エンティティ・オブジェクト内の新しい列に対応する属性をエンティティ・オブジェクトに追加できる。