List コンポーネントのインスタンスはすべて com.ibm.bpe.jsf.handler.BPCListHandler クラスのインスタンスに関連しています。
このリスト・ハンドラーは、関連するリスト内で選択された項目をトラッキングし、通知メカニズムを提供します。 リスト・ハンドラーは、bpe:list タグの model 属性を介して List コンポーネントにバインドされます。
リスト・ハンドラーの通知メカニズムは、 com.ibm.bpe.jsf.handler.ItemListener インターフェースを使用してインプリメントされます。 Business Process Choreographer Explorer はこの通知メカニズムを使用して、 さまざまな種類の項目用の詳細ページにリスト項目を関連付けます。 通知イベントのトリガーは、通常、現在のリストで表示される項目のプロパティーの 1 つです。
通知メカニズムを活用するには、 プロパティーの bpe:column タグの action 属性の値を、 通知イベントがトリガーされたときにアプリケーションが動作を続行する JavaServer Faces (JSF) ナビゲーション・ターゲットに設定します。List コンポーネントは、列内の項目を JSF コマンド・リンクとしてレンダリングします。 リンクがトリガーされると、リスト内の項目を表すオブジェクトが判別され、 すべての登録済み項目リスナーに渡されます。 このインターフェースのインプリメンテーションは、 JSF アプリケーションの構成ファイルに登録できます。
BPCListHandler クラスは、refreshList メソッドを提供します。 このメソッドを JSF メソッド・バインディングで使用して、 照会を再実行するためのユーザー・インターフェース制御をインプリメントすることができます。
リスト・ハンドラーを使用すると、すべての種類のオブジェクトおよびそれらのプロパティーを表示できます。 表示されるリストの内容は、リスト・ハンドラー用に構成された com.ibm.bpc.clientcore.Query インターフェースのインプリメンテーションによって戻されるオブジェクトのリストによって異なります。 照会は、BPCListHandler クラスの setQuery メソッドを使用してプログラマチックに設定することもできますし、アプリケーションの JSF 構成ファイルで構成することもできます。
照会は、Business Process Choreographer API に対してだけでなく、 コンテンツ管理システムやデータベースなど、アプリケーションからアクセスできるその他の情報ソースに対しても実行できます。 要件は、照会の結果が execute メソッドで オブジェクトの java.util.List として戻されることだけです。
戻されるオブジェクトのタイプは、照会が定義されたリストの列に表示されるすべてのプロパティーに対して適切な getter メソッドを使用できることを保証する必要があります。 戻されるオブジェクトのタイプがリスト定義に適合することを確認するには、 faces 構成ファイルで定義されている BPCListHandler インスタンス上のタイプ・プロパティーの値を、戻されるオブジェクトの完全修飾クラス名に設定します。 この名前は、照会インプリメンテーションの getType 呼び出しで戻すことができます。 実行時に、リスト・ハンドラーはオブジェクト・タイプが定義に準拠していることを確認します。
リスト内の特定の項目にエラー・メッセージをマップするには、 照会によって戻されたオブジェクトが署名 public Object getID() でメソッドをインプリメントする必要があります。
照会の実行中にエラーが発生した場合、 BPCListHandler クラスは、不十分なアクセス権限によるエラーとその他の例外とを区別します。 不十分なアクセス権限によるエラーをキャッチするには、 照会の execute メソッドによってスローされる ClientException の rootCause パラメーター が com.ibm.bpe.api.EngineNotAuthorizedException または com.ibm.task.api.NotAuthorizedException 例外である必要があります。 List コンポーネントは、照会の結果の代わりにエラー・メッセージを表示します。
エラーが不十分なアクセス権限によるものでない場合、 BPCListHandler クラスは例外オブジェクトを、 JSF アプリケーション構成ファイルの BPCError キーで 定義した com.ibm.bpc.clientcore.util.ErrorBean インターフェースの インプリメンテーションに渡します。 例外が設定されている場合は、エラー・ナビゲーション・ターゲットが呼び出されます。
BPCListHandler クラスは、 com.ibm.bpe.jsf.handler.ErrorHandler インターフェースをインプリメントします。 setErrors メソッドでタイプ java.util.Map のマップ・パラメーターを使用して、これらのエラーに関する情報を提供することができます。 このマップには、キーとして ID が、値として例外が含まれています。 ID は、エラーの原因となったオブジェクトの getID メソッドによって戻された値である必要があります。 マップが設定されていて、リスト内に表示されている項目のいずれかに ID のいずれかが 一致する場合は、リスト・ハンドラーによって、エラー・メッセージを含む列が自動的にリストに追加されます。
(c) Copyright IBM Corporation 2005, 2006. All rights reserved.
(c) Copyright IBM Japan 2006
このインフォメーション・センターでは、Eclipse テクノロジー (http://www.eclipse.org) が採用されています。