0

BPEL プロセスには、BPEL では実行できないロジックを実行するための Java コールアウトが含まれています。

その Java コールアウトは、(DII WS 呼び出しを使用して) 別の BPEL ワークフローを呼び出します。

BPEL1 -> (Java Embedding) -> Java code -> (SOAP call) -> BPEL2

1 つの面倒な詳細を除いて、すべて正常に動作しています。Enterprise Manager でコール スタックを確認すると、これら 2 つの BPEL プロセスはリンクされていません (つまり、1 つのツリーとして表示されません)。これにより、トラブルシューティングに多少の遅延と混乱が生じます。

通常の呼び出しステップを使用して同じ子 BPEL が呼び出されると、プロセスがリンクされます。

問題は、BPEL が親情報を子プロセスに渡す方法です。HTTP または SOAP ヘッダーであると考えられますが、すぐに調査します。ただし、誰かが以前にこの課題を抱えていて、必要なすべての手順の概要を説明してくれることを願っています. :-)

4

1 に答える 1

0

私の経験では、(IBM または Oracle BPEL エンジンを使用して) BPEL に Java を埋め込むことは、複雑な使用には適していません。

むしろ、BPEL によって呼び出される Java SCA コンポーネントで複雑なロジックを実行したいと考えています。

SCA コンポーネントの Java 実装は「Spring コンポーネント」と呼ばれます。

次のフローを作成できます。

BPEL1 -> Java spring component -> BPEL2

ワイヤーは、直接または石鹸を介してのいずれかです。

EM インスタンス ツリーは、インスタンスの一意の ID で生成されます。Java コードから SOAP 呼び出しを行った場合、この ID を伝播することはできません。

この ID 送信は SCA エンジンによって管理されます。

于 2011-09-16T14:57:26.900 に答える