0

jBPMについて質問があります。私たちのプロジェクトの1つで、他のシステム(jBPM、Delphiなど)がデータを受信するエンタープライズサービス(.Net)を開発しました。このために、私はSOAPインターフェースを提供しています。

ここで、jBPMシステムがサービスに接続するときに、システムに必要なデータを返す前に、手動で作業を行う必要がある場合があります。この場合、SOAPサービスは「ManualWorkTicketId」を返します。このIDを使用して、たとえば1分間隔でSOAPインターフェイスをポーリングできます。手動作業が完了するとすぐに、SOAPサービスは必要なデータをjBPMシステムに返すことができます。エンタープライズサービスはシステムを認識せず、通信用のSOAPインターフェイスを提供するだけなので、これは非同期部分を処理するための優れたソリューションであると考えています。

しかし、jBPM開発者は、これは良いアプローチではないと私に言いました。代わりに、彼はActiveMQキューに情報を書き込むことを提案しています。これは私が聞く必要があります。その後、手動作業が行われると、jBPMシステムから提供された別のキューに書き戻す必要があります。このキューで、メッセージはjBPMプロセスによって消費されます。

  1. 質問:私はjbpm開発者ではないので、jBPM内でWebサービスのポーリング部分を処理するための標準パターンがないかどうか疑問に思いました。
  2. 質問:エンタープライズサービスを緩く結合する必要があることを念頭に置いて、このような場合にどのアプローチを提案しますか?
4

1 に答える 1

0

JMSキューを実装する場合、Delphi開発者が文句を言うと思います。SOAPは優れたソリューションです。

これを見て、jBPM開発者に渡してください。(ところで、jbpm 3または4を使用していますか?)

完璧なタイミングが重要でない場合は、X分ごとにSOAPサービスをポーリングして、結果を確認できます。

于 2010-02-10T06:23:20.557 に答える