Oracle ADFでの名前付きイベントについて

イベントとは、固有のコマンドに対して実行される固有の操作です。Webページ上のコマンドによってイベントが起動されると、イベント・ハンドラによって処理が実行されます。通常、イベントはWebページ内のボタンまたはリンクによって実行されます。Oracle ADFでは、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ライフサイクルのカスタマイズ