次のビュー・オブジェクトに基づいてビュー・オブジェクト・インスタンスを作成します。
指定したビジネス・コンポーネント・アプリケーション・モジュールにすでに存在するビュー・オブジェクト
<jbo:CreateViewObject>または<jbo:CreateRowSet>データ・タグを使用して動的に作成するビュー・オブジェクト
JSP構文
<jbo:ViewObject
id="viewObjectInstanceName"
name="viewObjectName"
[ rangesize="number of rows displayed | -1 | 1" ]
[ itermode="LastPagePartial | LastPageFull" ]
/>
説明
<jbo:ViewObject>タグでは、BC4J APIを介してビュー・オブジェクト・インスタンスで操作する際、スクリプト可能な変数として使用できるビュー・オブジェクト・インスタンスが指定されます。次に例を示します。
<jbo:ViewObject id="vo" name="Mypackage1Module.EmpView1" />
<% Row currentRow = vo.getCurrentRow(); %>
以前のバージョンでは、BC4J JPSページは<jbo:DataSource>タグのみを使用して、ビジネス・コンポーネント・ビュー・オブジェクトへのデータ・バインドを取得しました。JDeveloperリリース9.0.3からは、BC4Jデータ・タグで必要なdatasource
属性に、ビュー・オブジェクト・インスタンス名を指定できます。このような、データソースとしてビュー・オブジェクトを直接指定する機能によって、<jbo:ViewObject>タグと<jbo:DataSource>タグがBC4J JSPページに必要ではなくなりました。<jbo:ViewObject>タグは、より明示的なタグ名を使用して<jbo:DataSource>タグの機能をミラーリングするために用意されています。
参照項目: oracle.jbo.ViewObject
および oracle.jbo.RowIterator
属性
id: ビュー・オブジェクトのインスタンス名。割り当てる名前は、ページ内で一意である必要があります。有効な任意のJava識別子を使用できます。スクリプトレット内では、idをoracle.jbo.ViewObject
型のスクリプト可能な変数として使用できます。
name: ビジネス・コンポーネント・プロジェクトに表示されるビュー・オブジェクトのフルネーム。アプリケーション・モジュールで定義された既存のビュー・オブジェクト、または<jbo:CreateViewObject>データ・タグを使用して作成したビュー・オブジェクトを指定できます。ビュー・オブジェクト名は、appmodId.viewobjectName
のようにアプリケーション・モジュールIDとともに指定する必要があります。appmodId.viewobjectName#rowsetName
という表記法を使用して、ビュー・オブジェクトの行セットを指定することもできます。
rangesize: (オプション)ビュー・オブジェクトからフェッチする一定の範囲の行数。これは、行セット全体を操作しない場合に役立ちます。範囲により、データソース内の行のサブセットにアクセスできるウィンドウが定義されます。範囲は、行セットが大きく、すべての行をクライアントに送る必要がない場合、またはページに特定の行数を表示する場合に便利です。デフォルトでは、rangesizeは1行(値1)に設定されます。値を-1にすると、すべての行がフェッチされます。
itermode: (オプション)ユーザーが行セットの最後の行範囲を表示する際の行セットの表示動作を指定します。ユーザーに、常に行セット内の行の指定された行数の範囲を表示する場合はLastPageFull
と入力します(このモードでは、ユーザーには完全に移入されたページが表示されます)。それ以外の場合、デフォルト値LastPagePartial
を入力すると、ユーザーは範囲サイズに関係なく行セットの最後まで移動できます。デフォルトの部分的ページ・モードを使用する場合、ユーザーに表示される最後のページ・サイズは、前に表示したページ・サイズと異なる場合があります(常に範囲サイズで制御されます)。
注意: 最後のページの部分的モード(デフォルト)は、ページが固定された行セットで処理することが多いWebクライアントに適しています。最後のページの完全モードでは、ページのスクロール単位が固定されたままとはかぎりません。ユーザーが行セットの最後に達すると、範囲サイズより小さい範囲でスクロールするようにページが調整されることがあります。これら2つのモードは、最後のページで行が削除された場合の動作も異なります。最後のページの完全モードでは、範囲が最後に達したときにユーザーが範囲内の行を削除した場合、上部から行が移動して(存在する場合)、範囲が完全なまま保持されます。最後のページの部分的モードでは、行は上部から移動しません。ページの最後の行が削除された場合、範囲は範囲サイズによって上にスクロールされます(ページング・アップ)。最後のページの動作の詳細は、oracle.jbo.RowIterator
のJavadocを参照してください。