Faces JSP ページへの関連レコード・データの追加

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

関連概念
Faces アプリケーション内のデータを使用する作業
関連タスク
リレーショナル・データベースへの接続の作成
Faces JSP ファイルへの関連レコード・リストの追加
Faces JSP ファイルへの Java Bean の追加
Faces JSP ファイルへの Domino Notes およびビューの追加
JSP ファイル間のパラメーターの引き渡し

フィードバック