データソースにバインドされた表を表示するコンポーネントを挿入し、オプションで編集フォームにリンクします。
JSP構文
<jbo:DataTable
datasource="datasourceId"
[ edittarget="event-handling page | the JSP with the component" ]
[ relativeUrlPath="component's JSP page | DataTableComponent.jsp" ]
/>
説明
バインド先のデータソースの複数のレコードを表示するには、<jbo:DataTable>コンポーネント・タグを使用します。たとえば、マスター/ディテール形式のJSPページのディテール・データソースのレコードを表示するためにDataTableコンポーネントを使用するとします。この場合、ユーザーはマスター・フォームに表示される各レコードを移動することにより、ディテール・フォームで対応する複数のレコードを表示できます。
DataTableコンポーネントが表示するレコード数は、ビュー・オブジェクトの範囲サイズによって制御されます。JSPページでは、<jbo:DataSource>データ・タグのrangesize属性を設定することにより範囲サイズを制御できます。この属性に数値を設定し、DataTableコンポーネントでユーザーが一度に表示できるレコード数を制限します。たとえば、rangesizeを10に指定すると、DataTableコンポーネントではデータソースのレコードを一度に10レコードずつ表示します。この場合、JSPページにDataScrollerコンポーネントを追加すると範囲の位置を変更できます。DataScrollerコンポーネントを使用すると、ユーザーはレコードをセットでスクロールできるようになります(rangesizeが10の場合、一度に10レコードずつスクロールできます)。DataTableコンポーネントがバインドされるデータソースに対してrangesizeを設定しない場合、DataTableコンポーネントでは1つのレコードを表示します。
注意: DataTableコンポーネントとともにDataScrollerコンポーネントを使用しない場合、DataTableコンポーネントで表示するレコードは、データソースの現在の範囲によって決定されます。
DataTableコンポーネントを使用し、ユーザーが編集できるようにレコードを表示することもできます。edittarget属性で、行編集アクションを処理するJSPページ名を指定します。行編集用に構成するDataTableコンポーネントは、次の2つの操作のリンクを表示します。
レコードの編集および削除オプションを有効にしてDataTableコンポーネントを使用する場合、DataTableコンポーネントは、特定の行を識別するためにrowkey入力パラメータを編集JSPページに渡します。
属性
datasource: <jbo:DataSource>データ・タグで定義したデータソースID。
指定するデータソースでは、ビュー・オブジェクトを順方向のみのモードで使用しないでください。<jbo:DataSource>データ・タグのforwardonly
属性のデフォルト設定はfalse
です。forwardonly
属性をtrue
に設定すると、データ・コンポーネント・タグを使用するJSPページでランタイム・エラーが発生します。
relativeUrlPath: (オプション)コンポーネント・タグを実装するJSPファイルの場所。デフォルトでは、JDeveloperに用意されているDataTableComponent.jsp
ファイルを参照します。コンポーネントの動作をカスタマイズするために独自のコンポーネント実装ファイル(.jsp
)の名前を指定できます。カスタマイズ済の既存のコンポーネント実装ファイル(.jsp
)を参照するよう名前を編集することもできます。
作成または参照するファイルがプロジェクトのHTMLルート・ディレクトリのサブディレクトリにある場合は、相対パスを指定する必要があります。たとえば、カスタム・コンポーネント実装ファイルMyDataTableComponent.jsp
をcomponents
というHTMLルートのサブディレクトリに作成した場合、relativeUrlPathの値は/components/MyDataTableComponent.jsp
になります。
例
次の例では、バインド先のデータソースの表を表示します。この例では、DataTableの編集ターゲットはJSP編集フォームです。DataTableコンポーネントのJSPページ(DataTableタグをJSPページに挿入すると生成される)の位置は、プロジェクトのJSPページと同じレベルです。
LocationsView Table with Edit Link <jbo:DataTable datasource="LocationsView" edittarget="LocationsView_Edit.jsp" />
BC4J JSPページへのコンポーネント・タグの追加
BC4Jコンポーネント・タグのカスタマイズ