イベントとは、固有のコマンドに対して実行される固有の操作です。Webページ上のコマンドによってイベントが起動されると、イベント・ハンドラによって処理が実行されます。通常、イベントはWebページ内のボタンまたはリンクによって実行されます。Oracle ADFでは、Webアプリケーションでイベントを使用するためのコマンドおよびイベント・ハンドラを簡単な方法で作成できます。たとえば、次の操作が可能です。
イベントを使用したアクション・バインディング・モデルの操作の実行。
アクション・バインディングの既存のメソッドをオーバーライドするカスタム・メソッドの記述。
モデル・レイヤーから独立したアクションの開発。これにより、アクションでは操作を実行するためのアクション・バインディングをコールする必要がありません。たとえば、Webページに、Webアプリケーションのヘルプ・トピックを表示するためのヘルプ・ボタンを組み込む場合は、名前付きのイベントを使用してこれを実行できます。
イベントを使用した新規ページへのフォワード。
Oracle ADFには、2種類のイベントを処理する方法が用意されています。
モデル・レイヤーでアクション・バインディングにマップするイベント。この種類のイベントを追加する一般的な方法は、データ・コントロール・パレットから操作をボタンとして挿入することです。
コントローラ・レイヤーでのみ処理する必要があるイベント。このイベントは自分で作成して名前を付けます。
ADFコントローラでは、アクション・バインディングを使用してモデル・レイヤー操作がコールされます。コントローラ・レイヤーでイベントを実行する必要がある場合は、対応するアクション・バインディングが検索され、doIt()
メソッドがバインディングに対して起動されます。各バインディングには、アクション・バインディングで定義されたデフォルトの動作を実行するデフォルト・イベント・ハンドラがあります。
イベントのイベント・ハンドラを記述することによって、アプリケーションでデータ・アクションまたはデータ・ページからコールされる、独自の名前付きイベントを開発できます。たとえば、関連するデータ・アクションまたはデータ・フォワード・アクションに対するページ・コントローラのサブクラスを作成することで、既存のアクション・バインディングをオーバーライドできます。
モデル・レイヤーから独立したイベントも開発できます。これにより、データ・アクションでは操作を実行するためのアクション・バインディングをコールする必要がありません。たとえば、名前付きのイベントを使用して、ショッピング・カート内の項目の小計を出力するなどの計算を実行できます。また、Webページ内のヘルプ・ボタンでWebアプリケーションの特定の部分に対するヘルプ・ページを表示するなど、カスタム・ナビゲーション操作も作成できます。
実行時に、カスタム・イベント・ハンドラが存在する場合は、そのカスタム・イベント・ハンドラが使用されます。カスタム・イベント・ハンドラが存在しない場合は、操作に対するアクション・バインディングが使用されます。たとえば、ほとんどのデータ・コレクションには、Nextメソッドが用意されています。Nextメソッドでは、一連の問合せ結果にあるレコードの次のページが表示されます。クラス内にNextメソッドに対するイベント・ハンドラを追加してそのデータ・アクションのページ・コントローラをオーバーライドすることによって、Nextメソッドをオーバーライドできます。この結果、Nextメソッドに対するカスタム・イベント・ハンドラが実行されます。カスタム・ハンドラが存在しない場合、データ・アクションではNextイベントに関連付けられたアクション・バインディングが実行されます。
また、アクションのフォワード名を関連Webページ内のイベント名と同じにすることで、イベントを使用してWebページ内のアクションに対するフォワードを定義できます。
Oracle ADFでの名前付きイベントの作成の詳細は、「Oracle ADFでの名前付きイベントの使用」を参照してください。
Oracle ADFでの名前付きイベントの使用
Oracle ADFのライフサイクルについて
アプリケーションのOracle ADFライフサイクルのカスタマイズ
アプリケーションのOracle ADFライフサイクルのカスタマイズ
ページのOracle ADFライフサイクルのカスタマイズ
Copyright © 1997, 2006, Oracle. All rights reserved.