|
WebLogic Server Process Edition を使用すると、複数の内部システム、外部リソース、およびユーザにまたがるビジネス プロセスをモデル化し、実行できます。ビジネス プロセス管理 (BPM) では、エンタープライズは、コントロールを使用してアクセスでき、統合してビジネス プロセスをモデル化できる、一連のビジネス サービスとみなされます。ビジネス プロセスを使用すると、ビジネス ロジックの実行と、バックエンド システム、ユーザ、およびトレーディング パートナ (システムおよびユーザ) 間の疎結合型のビジネス ドキュメント交換を調整できます。
以下のセクションでは、BPM と、ビジネス プロセスのリソースとして使用できる Web サービスについて詳しく説明します。
ビジネス プロセス エンジンを使用すると、ビジネス プロセスのグラフィック表現を容易に作成できるため、実装の詳細よりもアプリケーションのロジックに集中できるようになります。
ビジネス プロセスのコンポーネント ノードのグラフィックを作成するには、ビジネス プロセス パレットからコンポーネントをドラッグし、[デザイン ビュー] ペインにドロップします。プログラムの制御は、それらのノード (またはシェイプ) とノード間の連結によって視覚的に表されます。実質的には、ビジネス プロセス、およびそのプロセスが行うクライアントやリソース (データベース、JMS キュー、ファイル システムなどのコンポーネント) との対話のグラフィカルな表現を作成します。次の図に、ビジネス プロセス エディタの例を示します。
ビジネス プロセスの作成方法の詳細については、
『ビジネス プロセス構築ガイド』を参照してください。
次の表で、WebLogic Server Process Edition のビジネス プロセス管理 (BPM) の主要な機能について説明します。
WebLogic Server Process Edition では、Web サービス、非同期通信、および XML メッセージングがプラットフォーム レベルで利用されます。このレベルでは、これらのサービスを内部統合および外部統合の両方にわたって利用することにより、疎結合アプリケーションおよび非同期アプリケーションの開発および統合を簡素化できます。
WebLogic Server Process Edition は、Web サービスのセキュリティおよび信頼性の高いメッセージングなど、Web サービスのネイティブ サポートを特徴としています。Web サービスは WebLogic Server Process Edition のビジネス プロセス内から呼び出すことができます。ビジネス プロセスを Web サービスとしてエクスポーズし、それらをリソースとして他のアプリケーションおよびアプリケーション コンポーネントが使用できるようにすることもできます。次の図に、ビジネス プロセスから呼び出された Web サービスを示します。
Weblogic Server Process Edition のビジネス プロセス管理 (BPM) 機能を使用すると、社外のトレーディング パートナ間で情報を調整して交換するだけでなく、多様なアプリケーションやユーザを統合することができます。ビジネス プロセスを使用すると、ビジネス ロジックの実行と、バックエンド システム、ユーザ、およびトレーディング パートナ (システムおよびユーザ) 間の疎結合型のビジネス ドキュメント交換を調整できます。
ビジネス プロセスの設計では、まず最初に、プロジェクトのビジネス要件を満たすビジネス プロセスをグラフィカルに表現します。ビジネス プロセスのコンポーネント ノードのグラフィックを作成するには、ビジネス プロセス パレットからコンポーネントをドラッグし、[デザイン ビュー] ペインにドロップします。プログラムの制御は、それらのノード (またはシェイプ) とノード間の連結によって視覚的に表されます。グラフィック ツールを使用してビジネス プロセスを設計する際には、ソース コードが自動的にビジネス プロセス ファイルに書き込まれます。Java のコードを記述する必要があるときは、1 回クリックするだけでいつでも Java コードを使用することができます (ソース ビュー)。
WebLogic Server Process Edition のビジネス プロセス管理機能を使用すると、企業の開発者は、既存のエンタープライズ システム、クロスエンタープライズ アプリケーション、およびエンドユーザの意思決定者を統合する複雑な e ビジネス プロセスを開発、実行、および管理できます。
ビジネス プロセスの作成方法の詳細については、
『ビジネス プロセス構築ガイド』を参照してください。
ビジネス プロセスには、ステートフルとステートレスの 2 種類があります。ステートフル プロセスとは、エンティティ bean にコンパイルされ、1 つまたは複数の JTA トランザクションのスコープ内で実行されるビジネス プロセスのことです。ステートレス プロセスとは、ステートレス セッション Bean にコンパイルされ、1 つの JTA トランザクションの内部で実行されるビジネス プロセスのことです。デフォルトでは、ビジネス プロセスはデータ フローを遮断する構成要素 (つまりトランザクション境界に影響するプロセス) を追加するまではステートレスです。トランザクション境界の詳細については、『ビジネス プロセス構築ガイド』の「トランザクション境界」を参照してください。
以下のセクションでは、ステートフル プロセスとステートレス プロセスについて詳しく説明します。
ステートレス プロセスは、短期間のロジックを呼び出すビジネス シナリオをサポートするため、高いパフォーマンスが要求されます。ステートレス プロセスは、その状態をデータベースに保存しないため、低レイテンシ、高パフォーマンスの実行に適しています。ステートレス プロセスの例としては、クライアントから非同期でメッセージを受信し、そのメッセージを変換して、それをコントロールを使用してリソースに非同期で送信するプロセスがあります。もう 1 つの例には、メッセージ ブローカ サブスクリプションで開始され、メッセージを変換し、それを別のメッセージ ブローカ チャネルにパブリッシュするプロセスがあります。このようなプロセスは、従来のメッセージ ブローカ システムまたはメッセージ ルーティング システムで使用される種類のルーティング規則と類似しています。
ステートレス プロセスで変数を使用する方法の詳細については、『ビジネス プロセス構築ガイド』の「ステートレス/ステートフル ビジネス プロセスの構築」を参照してください。
ステートフル プロセスは、複雑な長期間のロジックを呼び出すビジネス シナリオをサポートするため、信頼性と回復に関する特定の要件があります。ステートフル ノードまたはトランザクションの境界を設定するロジックを追加すると、プロセスはステートフルになります。トランザクション境界の詳細については、『ビジネス プロセス構築ガイド』の「トランザクション境界」を参照してください。
たとえば、メッセージを受信し、そのメッセージを変換して、それをビジネス パートナに送信し、その後に非同期の応答を待ち受けるプロセスはステートフルになります。これは、待機動作によってトランザクション境界が強制されるためです。これが必要なのは、以下のことが確実に行われるようにするためです。
ステートフル プロセスで変数を使用する方法の詳細については、『ビジネス プロセス構築ガイド』の「ステートレス/ステートフル ビジネス プロセスの構築」を参照してください。
[開始] ノードのプロパティ エディタには、ビジネス プロセスがステートレスかステートフルかが表示されます。 ステートレス プロセスの場合は、プロパティ エディタに「Stateless = True」というメッセージが表示され、[開始] ノードのアイコンに アイコンが表示されます。ステートフル プロセスの場合は、プロパティ エディタに「stateless = False」というメッセージが表示され、[開始] ノードのアイコンに アイコンが表示されます。