eDocs ホーム > WebLogic Integration 10gR3 ドキュメント > ソリューション サンプル > ワークリストのサンプル
ワークリストのサンプル
このサンプルは、次の相関する 2 つの異なる使用例で構成されます。
- 使用例 1 - タスクの作成と割り当て
- 使用例 2 - カスタム ワークリスト クエリ
「タスクの作成と割り当て」使用例で作成したデータのクエリを実行するには、「カスタム ワークリスト クエリ」使用例を使用します。いずれか一方の使用例を分離して実行することもできます。
注意 : このサンプルは、WLI 8.1 クライアント互換 API の使い方を示しています。このサンプルは dev2dev で提供されていますが、Oracle のサポート対象外です。
サンプルの動作
使用例 1 - タスクの作成と割り当て
この使用例では、ワークリスト タスク項目を同期的に作成するための一般的プロセス パターンとベスト プラクティスを示します。このパターンでは、タスク作成と同じ手順でユーザへのタスク割り当ても行います。ワークリスト タスクの作成に必要なデータはすべて XML ドキュメントとして渡されます。JPD が XML へのトランスフォーメーションを実行し、タスク コントロールを使用してタスクをデータベースに作成します。タスクの作成とユーザへの割り当ては 1 つの手順で完了します。このプロセス (JPD) では、作成したタスクの完了、中止、期限超過などのライフサイクル イベントも処理します。
使用例 2 - カスタム ワークリスト クエリ
この使用例では、WorklistScrollableResultManager API を使用して多数のワークリスト タスクの情報を取得する場合のベスト プラクティスを示します。この API は、ステートレス セッション Bean (SLSB) インタフェースを介してエクスポーズされます。
WorklistScrollableResultManager API ではカーソルのようなインタフェースを使用して、ユーザがバッチ サイズを選択できるようにしています。新しくサポートされる最大バッチ サイズは 1000 です。この API は以前の WorklistManager API よりも多くの同時クライアントをサポートし、スケーラビリティが向上しています。そのため、WebLogic Integration 10.2 SP4 以降ではこの API を使用することをお勧めします。
このサンプルは、バッチ モードと対話モードという 2 つのモードで動作します。バッチ モードでは、カーソルのバッチ サイズが最大値の 1000 に設定されます。カーソルの値を大きくすると、データベースへのアクセス回数は減少しますが、1 回のアクセス時間が増加します。バッチ モードは、1 回のクライアント呼び出しで多数のタスクを取得する場合に適しています。対話モードは、Web ページなどの UI をサポートするために最適化されています。このモードでは、ユーザは管理可能なバッチ サイズでタスクを取得できます。
サンプルの動作のしくみ
次の図は、使用例 1 と使用例 2 のアーキテクチャを示します。
使用例 1 - タスクの作成と割り当て
外部の Java クライアント (スタンドアロンまたは別のサーバ) が JPD プロキシを使用して JPD (TaskCreation.jpd) を呼び出します。JPD は入力 XML を必要なフォーマットに変換し、タスク コントロールを呼び出してタスクを作成し、割り当てます。次に JPD が返されます。クライアント呼び出しが返されても、JPD は存続し、作成したタスクで発生するイベントを待機します。このタスクでイベントが発生すると、JPD は同じ処理を行い、その後にプロセスが終了します。
使用例 2 - カスタム ワークリスト クエリ
このクライアントは、RemoteWorklistManager SLSB の同期的なリモート呼び出しを行うスタンドアロン Java クラスです。このクライアントは、TaskSelector およびバッチ サイズを入力パラメータとして getTaskInfoCursor を呼び出し、TaskInfoCursor を取得します。
TaskSelector は Worklist API に含まれるクラスで、クライアントがタスク属性に制約を指定できるようにします。これにより、クライアントは TaskSelector に異なる属性を設定してカスタム クエリを作成し、実行できます。このサンプルでは、このクライアントが TaskSelectorFactory (Worklist API には含まれない) を使用して TaskSelector のインスタンスを作成し、属性を設定します。この属性はプロパティ ファイルから読み込まれます。また、Web インタフェースまたはシック クライアントを介してこれらのプロパティを設定することもできます。
カーソルは、クエリ結果をスクロールできるイテレータを表し、TaskInfo オブジェクトの配列を含みます。配列のサイズは、バッチ サイズまたは 1000 のいずれか小さい方と同じ値です。ユーザは、前方にスクロールして次のバッチを取得できます。
必須ソフトウェア
このサンプルには次のソフトウェアが必要です。
- WebLogic Integration 10gR3。WebLogic Integration 10gR3 は、ダウンロード ページからダウンロードできます。
- WLI Common Utilities バージョン 2.5。WLI Common Utilities は、
ダウンロード ページからダウンロードできます。
補足資料
このサンプルには、アプリケーション コードに加えて次の項目が含まれています。
- アプリケーションをサポートするように WebLogic Integration クラスタをコンフィグレーションするための手順およびスクリプト
- 適切にコンフィグレーションされたクラスタにアプリケーションをデプロイするための手順およびスクリプト
- ワークリスト タスクを作成して割り当てるための手順、ガイドライン、および注意事項
ダウンロード方法
ワークリストのサンプルは dev2dev の
サンプルのダウンロード ページからダウンロードできます。
|