ADF UIXのすべてのコンポーネントでクライアント・アクションがサポートされているわけではありません。クライアント・アクションは、ユーザー・アクション(リンクまたはボタンのクリックなど)に応じてトリガーされ、その後の処理のためにサーバーまたは中間層に送信されるイベントです。
ClientAction APIにより、サーバーまたは中間層で実行できる任意のイベントおよびパラメータを、サポートされるコンポーネントで送信できるようになります。イベントは、部分ページ・イベントまたは全ページ・イベントです。
クライアント・アクションが使用可能なコンポーネントは、次のUIX XML例で示されるように、primaryClientAction
要素のクライアント・アクションをラップします。
...
<button text="Client action enabled button">
<primaryClientAction>
...
<!-- client actions here -->
...
</primaryClientAction>
</button>
...
次のようなほとんどのUIXフォーム・コンポーネントは、primaryClientAction
要素を使用して、クライアント・アクションをラップできます。
基本的なクライアント・アクションは2つあります。
firePartialAction
: 部分ページ・イベントとしてイベントを配信します。このクライアント・アクションを使用して、任意のコンテンツの部分ページ更新を起動します。クライアント・アクションが使用可能なコンポーネントは、firePartialActionを使用できます。クライアント・ブラウザおよびプラットフォームがページの部分レンダリングがサポートされていない場合には、ユーザーがイベントをサーバーに送信できるように、トリガー・ボタンまたはリンクがレンダリングされます。
fireAction
: 全ページ・イベントとしてイベントを配信します。
firePartialAction
とfireAction
に対して、次の属性を設定できます。
event
: 生成するイベントの名前を指定します。デフォルトはupdateです。
formSubmitted
: イベントを起動する際に、フォーム送信を使用するかGETを使用するかを指定します。
targets
: (firePartialAction
のみ)。更新する部分ターゲットの、空白文字で区切られたセットを指定します。そのリストはデータ・バインドできません。
triggerText
: (firePartialAction
のみ)。部分ページ・レンダリングがターゲット・ブラウザでサポートされていない場合に、トリガー・ボタンまたはリンクでレンダリングするテキストを指定します。テキストを指定しない場合は、「実行」ボタンがレンダリングされます。
unvalidated
: アクションが起動されるときにクライアント側の検証が実行されるかどうかを指定します。デフォルトでは、検証が実行されます。formSubmitted
属性がこの属性よりも優先されることに注意してください。
source
: (fireAction
のみ)。イベントが配信されるときにソース・パラメータとして送信される名前を指定します。この属性が設定されない場合は、アクションがアタッチされるコンポーネントのIDが送信されます。IDが設定されない場合は、親コンポーネントのname属性の値が送信されます。
フォーム送信イベントの場合、任意のイベント・パラメータを設定して、部分ページのupdateイベントでフォームと一緒に送信することもできます。また、formValue
要素を、ユーザーが送信する追加イベント・パラメータそれぞれに対して指定する必要があります。
注意: クライアント・アクションは、JavaScriptイベントを使用するかわりに、リンクを使用してアクションをレンダリングできるように拡張されます。getParametersメソッドは、リンクに必要なすべての問合せパラメータを返します。renderAsEventメソッドがtrueを返す場合、レンダラはイベントの1つにスクリプトをレンダリングする必要があります(たとえば、onClick、onChangeなど)。renderAsEventがfalseを返す場合、レンダラにはリンクとして直接レンダリングするオプションがあります。
部分ページ・レンダリングについて
lovOpenWindowActionクライアント・アクションについて
primaryClientAction属性の編集
フォーム・コンポーネントの使用
Copyright © 1997, 2004, Oracle. All rights reserved.