データ・ソースにバインドされた表を表示するコンポーネントを挿入し、オプションで編集フォームにリンクします。
JSP構文
<jbo:DataTable
datasource="datasourceId"
[ editTargetURL="event-handling page | the JSP with the component" ]
[ relativeUrlPath="component's JSP page | DataTableComponent.jsp" ]
/>
説明
<jbo:DataTable>
コンポーネント・タグは、コンポーネントにバインドされているデータ・ソースから、複数のレコードを表示する場合に使用します。DataTableコンポーネントの例は、マスター/ディテール・タイプのJSPページにおける詳細データ・ソースからレコードを表示するために使用されます。この場合、ユーザーは詳細フォーム内の複数のレコードを表示するには、マスター・フォームによって表示される個々のレコードを移動します。
DataTableコンポーネントが表示するレコードの数は、ビュー・オブジェクトのレンジ・サイズによって制御されます。JSPページでは、<jbo:DataSource>
データ・タグのrangeSize属性の設定によってこのレンジのサイズを制御できます。この属性に数値を設定して、DataTableコンポーネントでユーザーが一度に表示できるレコードの数を制限します。たとえば、rangeSizeに10を指定すると、DataTableコンポーネントは、データ・ソースから一度に10レコードを表示します。この場合、レンジの位置を変更するために、JSPページにDataScrollerコンポーネントを追加できます。DataScrollerコンポーネントでは、ユーザーがレコードをセット単位でスクロールできます(rangeSizeが10の例では、ユーザーは一度に10レコードをスクロールします)。DataTableコンポーネントがバインドされているデータ・ソースにrangeSizeを設定しないと、DataTableコンポーネントはレコードを1つ表示します。
注意: DataScrollerコンポーネントをDataTableコンポーネントとともに使用しない場合、DataTableコンポーネントによって表示されるレコードはデータ・ソース・レンジの現在の状態によって決定されます。
DataTableコンポーネントを使用して、ユーザーが編集可能なレコードを表示することもできます。editTargetURL属性を使用して、行編集アクションを処理するJSPページの名前を指定します。行を編集するよう構成したDataTableコンポーネントでは、次の2つの操作用のリンクが表示されます。
レコードを編集および削除するオプションを有効にしてDataTableコンポーネントを使用する場合、DataTableコンポーネントは特定の行を識別するために、編集JSPページにrowkey入力パラメータを渡します。次の例は、DataTableコンポーネントを含むフォームがrowkeyを取得し、処理ページに発行する方法を示しています。
<a HREF example here /a>
属性
datasource: <jbo:DataSource>
データ・タグで定義されたデータ・ソースid。
指定するデータソースには、転送専用モードのビュー・オブジェクトは使用できません。<jbo:DataSource>データ・タグのforwardonly
属性のデフォルト設定はfalse
です。forwardonly
属性をtrue
に設定すると、データ・コンポーネント・タグを使用するJSPページでは、ランタイム・エラーがスローされます。
relativeUrlPath: オプション。コンポーネント・タグを実装するJSPファイルの場所。デフォルトでは、JDeveloperが提供するファイルDataTableComponent.jsp
が参照されます。コンポーネントの動作をカスタマイズするために作成するコンポーネント実装.jsp
ファイルの名前を指定できます。また、すでにカスタマイズした既存のコンポーネント実装.jsp
ファイルを参照するように名前を編集することもできます。
作成または参照するファイルがプロジェクト・ディレクトリsite
(mywork
フォルダ内)のサブディレクトリに表示される場合、相対パスを指定する必要があります。たとえば、components
と呼ばれるsite
フォルダのサブディレクトリにカスタム・コンポーネント実装ファイルMyDataTableComponent.jsp
を作成する場合、relativeUrlPathの値は、/components/MyDataTableComponent.jsp
になります。
例
次の例は、DataTableコンポーネントがバインドされているデータ・ソースの表を示しています。この例では、DataTableの編集ターゲットはJSP編集フォームです。DataTableコンポーネントのJSPページ(JSPページにタグを挿入したときに生成される)の位置は、プロジェクトJSPページと同じレベルにあります。
LocationsView Table with Edit Link
<jbo:DataTable datasource="LocationsView" edittarget="LocationsView_Edit.jsp" />
Copyright © 1997, 2006, Oracle. All rights reserved.