Web ページで動的データを使用するには、データ・ソースを定義する必要があります。
使用できる動的データ・ソースの 1 つは関連レコードです。
関連レコードをデータ・ソースとして使用すると、
ユーザーは Web ページ上でレコードを作成し、読み取り、更新し、削除することができます。
「データ」ドロワーを使用して Web ページに関連レコードを追加する方法:
- パレット上の「データ」ドロワーを開く。
- 関連レコードをパレットから Faces JSP ページにドラッグする。「関連レコードの追加」ウィザードが開きます。
注: 関連レコード
または関連レコード・リストを Faces JSP に追加する場合は、
ページ・コード・ファイルが必要です。
関連レコードまたは関連レコード・リストを追加する場合に
ページ・コードの抑止をオンにしていると、
ページ・コード・ファイルの生成を許可するよう
プロンプトが出されます。
- ページ内でレコードを参照するための名前を指定する。
- プロジェクトの別の部分で既に定義済みの関連レコードのデータを使用したい場合は、
「既存のレコードまたはレコード・リストのメタデータ定義を再利用する」をチェックしてから、
「参照」をクリックして入力ファイルを検索する。
- ページにデータ・コントロールを自動的に追加するには、
「Web ページにレコードを表示するための入出力コントロールを追加する」にチェック・マークを付ける。
これをチェックしないと、関連レコードはページ・コード・ファイルと「ページ・データ」ビューに追加されますが、
データ・コンポーネントは Faces JSP ファイルに追加されません。
後でコントロールを追加するには、ページにレコードをドラッグするだけです。 (このほかに、
「データ」ドロワーの代わりに「ページ・データ」ビューを使用してページに関連レコードを追加する方法もあります。
この場合、「ページ・データ」ビューを使用して最初に関連レコードを作成し、
次にそのレコードを Web ページにドラッグします。)
- 「コントロールの作成対象」セクションで、レコードをページにドラッグする際に、
以下のコントロールのいずれか 1 つを選択する。
- 既存レコードの表示 (読み取り専用):
デフォルト・コンポーネントは、多くの場合出力テキスト・コンポーネントですが、
プロパティーの実行時のタイプに依存します。
データ・レコードは初期化され、既存のレコードのデータを含みます。
- 既存レコードの更新:
デフォルト・コンポーネントは入力フィールド・コンポーネントです。
データ・レコードは初期化され、既存のレコードのデータを含みます。
- 新規レコードの作成:
デフォルト・コンポーネントは入力フィールド・コンポーネントです。
データ・レコードは空レコードとして初期化されます。
レコードはデータベース内の新規行として表示されます。
- 「次へ」をクリックします。 「レコード・プロパティー」パネルが開きます。
- 接続名を指定するか、接続を新規作成するために「新規」をクリックする。
- 「新規」をクリックすると、「新規接続」パネルが開きます。
- 「新規 DB 接続の作成」をクリックする。
「新規データベース接続」ウィザードが開きます。
このウィザードを使用して新規データベース接続を作成する場合の詳細については、
トピック『ウィザードを使用したデータベースへの接続』を参照してください。
- データ・ソースから使用するテーブルを選択する。
- 「次へ」をクリックします。 「列の選択およびその他タスク」パネルが開きます。
- 「列の選択およびその他タスク」パネルで、次の手順を実行する。
- 関連レコードに組み込むべき列 (フィールド) を選択する。
- レコードをさらに詳細に定義するために、
以下のタスクまたは拡張タスクのいずれかをクリックする。
- 主キーの変更: 「主キーの編集」ダイアログが開き、使用可能な列および主キー列をリストします。
矢印を使用して主キー列を変更します。
- 配列結果: 「配列」ダイアログが開き、使用可能な列をリストします。
配列する列を選択し、それらを編成する方法 (昇順または降順) を選択します。
- フィルター結果: 「フィルター」ダイアログが開きます。追加 (+) ボタンをクリックして、
「条件」ダイアログを開きます。ここで、特定の条件に合致するレコードだけが表示されるように、
フィルターを掛けることができます。
- 別のデータベース・テーブルを関係から追加: 「関係の作成」ウィザードが開き、
現行データベースから既存の関係を作成するか、または新規の関係を作成することができます。
- 自動生成キー: 「キー生成」ダイアログが開きます。
「自動キー生成の使用」をチェックしてから、
自動キー生成に使用するテーブルおよび 2 つの列を選択します。
- 並行性コントロールの設定:「並行性」ダイアログが開きます。
衝突列を選択します。[ここではもっと説明が必要]
- 「次へ」をクリックします。
「データ・コントロールの構成」パネルが開きます。
- 「データ・コントロールの構成」パネルで、次の手順を実行する。
- 表示するフィールドの選択、フィールドの横に表示されるラベルの変更、
および使用するコントロール・タイプの選択を行う。
レコードの表示、更新、または作成を選択したかどうかによって、
コントロール・タイプには「出力フィールド」、「出力フォーマット済みテキスト」、「コンボ・ボックス」、
「入力フィールド」、および「入力テキスト領域」を含めることができます。
フィールドの順序を変更するには、上矢印と下矢印を使用します。
- 追加のオプションを作成する場合は、
「オプション」をクリックする。「オプション」ダイアログが開きます。
- 「オプション」ダイアログの「ラベル」タブで、
中央揃え、あるいは右端合わせまたは左端合わせになるように、ラベルを位置合わせできます。
各ラベルの最後にコロンを付けたり、各ラベルの先頭文字を大文字にしたり、各ラベルのすべてを大文字にすることも可能です。
- 「拡張」タブで、「深さ」の横に深さレベルを入力する。
深さレベルで、「ページ・データ」ビューに表示されるデータのレベル数を設定する。
深さ 3 を選択すると、「ページ・データ」ビューには 3 データ・レベルの関連レコード・リスト
(またはその他のデータ・ソース) が表示されます。
「デフォルトの深さとして使用」にチェックして、
このユーザー用のデフォルト深さレベルを変更します。
「データ・コントロールのみを作成」にチェックして、
ページのデータ・コントロールのみを作成します。
このオプションがチェックされていないと、データ・コントロールおよびその他の関連コントロールは作成されます。
例えば、入力テキスト・コンポーネントを作成する場合、
「データ・コントロールのみを作成」にチェックすると、
そのコンポーネントだけがページに作成されます。
しかし、このオプションをチェックしないと、入力テキスト・コンポーネントだけでなく、
表示エラー・コンポーネント、ラベル・コンポーネントと、
おそらく「実行」ボタンも同様に作成されます。
「ソース・コードに <label> タグをインクルード
(Include <label> tags in the source code)」に
チェック・マークを付けて、
ラベルのアクセシビリティーを向上させる <label> タグを作成します。
- レコードの更新を選択すると、
「オプション」ダイアログに「ボタン」タブも表示されます。
「ボタン」タブで、「実行」ボタン (更新を実行する)
および「削除」ボタン (レコードを削除する) を含めることを選択できます。
- レコードの作成を選択すると、「オプション」ダイアログに「ボタン」タブが表示されます。
「ボタン」タブで、「実行」ボタン (新しく作成されたレコードを実行する) を含めることを選択できます。
- 「終了」をクリックする。 選択した内容に基づいて、行やその他のコンポーネントが含まれている HTML テーブルが開きます。
例えば、既存のレコードの更新を選択すると、入力テキスト・コンポーネントが表示され、
レコードの更新アクションやレコードの削除アクションを実行するための「実行」ボタン、
および「削除」ボタンが含まれている場合もあります。
新規 UI コンポーネントの
「値」情報が、
既に「プロパティー」ビューに入力済みである点に注目してください。
データ・レコードの作成時には、デフォルト・フィルターがセットアップされて、
表示対象のレコードを判別します。
このフィルターは、主キー列がパラメーター (その名前が主キー列の名前と一致する) 内の値と一致するレコードを探します。
これにより、更新ページや詳細ページのセットアップが簡略化されます。
このページにリンクする際には、このパラメーターを使用してページに主キー列の値を渡してください。
これを行わないと、Web ページは読み取った最初のレコードの値しか表示しなくなります。
データ・レコードを構成して、フィルターを変更できます。
関連レコードを追加するほかに、関連レコード・リストを Web ページに追加することもできます。
データ・テーブル、およびデータ・テーブルと関連レコード・データについて、
自動キー生成について、さらに学習される場合は、次のチュートリアルに従ってください:
チュートリアル: JavaServer Faces による Web ページでの動的情報の表示。 このチュートリアルでは、新聞の案内広告欄として機能する動的 Web サイトの設計方法を学習します。この Web サイトは、JavaServer Faces
(JSF) コンポーネントおよび Service Data Objects (SDO) コンポーネントを使用する、完全な J2EE サンプル・アプリケーションです。Web アプリケーションでは JSF テクノロジーを使用して、案内広告データが保管されているデータベースにリンクする動的 Web ページを作成します。チュートリアル: JavaServer Faces による Web ページでの動的情報の表示。 このチュートリアルでは、新聞の案内広告欄として機能する動的 Web サイトの設計方法を学習します。この Web サイトは、JavaServer Faces
(JSF) コンポーネントおよび Service Data Objects (SDO) コンポーネントを使用する、完全な J2EE サンプル・アプリケーションです。Web アプリケーションでは JSF テクノロジーを使用して、案内広告データが保管されているデータベースにリンクする動的 Web ページを作成します。