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