コードでのビュー・リンクの横断

2つのオブジェクト・インスタンスがデータ・モデルでマスター/ディテール関係にある場合、これらのインスタンスはビジネス・コンポーネント・フレームワークにより同期化されます。マスターの現在の行により、ディテールにロードされる行が自動的に決定されます。

データ・モデルでマスター/ディテール関係にない2つのオブジェクト間にビュー・リンクを持つことも可能です。つまり、両方のビュー・オブジェクトのインスタンスが独立している場合、またはリンク先ビュー・オブジェクトがデータ・モデル内にまったく存在しない場合です。

このような場合は、リンク元の行でビュー・リンク・アクセッサをコールすることで、その行と自動的に同期化されるリンク先のオブジェクトのRowSetを取得できます。双方向ビュー・リンクがある場合は、リンク先の行でビュー・リンク・アクセッサをコールすると、リンク元のオブジェクトのRowSetを取得できます。

ビュー行でビュー・リンク・アクセッサをコールするには、次のようにします。

  1. ビュー・リンクに対し、生成済のアクセッサがあることを確認します。
  2. (ビジネス・ロジック層またはクライアントで)次のコードを使用します。<AccessorName>はビュー・リンク・アクセッサの名前で、<myrow>は行の名前です。

    RowSet destRows = (RowSet) myrow.getAttribute("AccessorName");