データ・タグを使用した行の作成
BC4Jデータソースに新しい行を挿入するためのJSPページでは、行の作成に2つの方法があります。次のことが可能です。
ユーザーが挿入JSPページを表示する際に行を作成する場合、レンダリングされたJSPページではHTTPリクエスト・オブジェクトを介して、次の2つのものを処理のために送信ページに渡す必要があります。
- 挿入されるデータソース行属性に対するHTTPパラメータの名前と値のペア
- 挿入されるデータソースおよび行を識別する行キー・オブジェクト
ユーザーが行データを送信JSPページに送った後で行を作成する場合は、行キーの取得先である行が存在しないため、挿入されるデータソース行属性に対するHTTPパラメータの名前と値のペアのみを渡します。
一般に、アプリケーション・モジュール・インスタンスおよびビュー・オブジェクト・データソースに対してこれを実行するには、次の2つのJSPページを作成します。
- 新しい行を挿入する場合は、ユーザーが挿入ページを表示する際に挿入する行を作成するのか、またはユーザーがデータを送信した後にサーバー側の処理で行を作成するのかを決めます。
- 行をどこで作成するかによって、静的HTMLフォーム要素またはBC4J Inputデータ・タグのいずれかをHTMLの<form>タグ内に追加します。
注意: BC4J Inputデータ・タグは、ビュー・オブジェクト・データソースのデフォルト属性にバインドされたコントロールを自動的にレンダリングします。ただし、ユーザーが挿入ページを表示しても、データを送らない場合、作成された行はHTTPセッションがタイムアウトになるまでデータソース内に残ります。
- BC4J Inputデータ・タグを(静的HTMLフォーム要素のかわりに)使用する場合は、次のようにします。
- Createアクション付きのBC4J Rowタグを追加し、データソース内に新しい行を作成します。
- BC4J UrlEventデータ・タグを追加し、行キーを入力として取得します。
- 静的HTMLフォーム要素を(BC4J Inputタグのかわりに)使用する場合は、必ずフォーム・コントロールの名前属性で更新するデータソース行属性の完全な名前を指定してください。名前には大/小文字の区別があります。
- データ入力ページで指定した同じデータソースを使用し、BC4J OnEventデータをターゲット・ページに追加します。
- BC4J Rowデータ・タグをOnEventタグにネストし、行をどこで作成するかによって、CreateアクションまたはUpdateアクションのいずれかを使用します。
Createアクションでは、HTTPリクエスト・オブジェクトをBC4J SetAttributeデータ・タグによって処理する必要があります。これに対して、Updateアクションでは、Rowデータ・タグによりHTTPリクエスト・オブジェクトをSetAttributeデータ・タグなしで処理できます。
- BC4J PostまたはCommitデータ・タグ(あるいはその両方)を追加し、データソースへの変更をデータベースに適用します。
更新タスク実行時にJSPページでアクセスするアプリケーション・モジュール・オブジェクトには、送信JSPページが更新を完了するまで、リザーブ・モードでアクセスする必要があります。JSPページに追加するBC4J ApplicationModuleデータ・タグのreleasemode属性が、この動作を制御します。
関連項目
BC4Jデータ・タグを使用した行の作成について
BC4JフォームのInputデータ・タグについて