0

Web サービスのクライアントがメッセージを正常に受信したかどうかを知る必要があります。クライアントがメッセージを受信しない場合 (通話中にクライアントのネットワークがダウンした場合)、変更をロールバックしたいので、次の呼び出しで最初に取得しようとしたのと同じデータが返されます。 .

Web サービスを呼び出すたびに、一連の「ページ」に相当するデータが提供されますが、「ページ」を見逃すことは望ましくありません。送信がいつ失敗したかがわからない場合は、ロールバックできないため、クライアントはサポートに電話して、「ページ」が見つからないことを伝えなければならない可能性があります。

サーバーがまだデータ処理を行っている間に、長い呼び出しの途中でクライアントプロセスを強制終了しようとしましたが、サーバーはそのまま続行し、正常に終了しました。

これは、Axis2 と JBoss と SOAP を使用する Java Web サービスです。これに関するいくつかの設定のドキュメントを掘り下げているので、設定できることを願っています。

4

2 に答える 2

2

クライアントがペイロードを受信したことを確認する方法が組み込まれているとは思いません。そのため、ビジネス プロセスに組み込む必要がある場合があります。

これがいくつかの異なる方法で行われるのを見てきました。

  • ペイロード x/y を受信して​​いることを指定する要素をクライアントに提供します。クライアントがネットワークの問題のために特定のペイロードを取得しない場合は、その特定のペイロードを再度要求できます。
  • オール オア ナッシングのシナリオの場合、クライアントはトランザクションの開始時に Web サービスからある種のトークンを要求し、すべての「ページ」を取得した後、クライアントは別の呼び出しを行うことができます。トランザクションが完了したことを Web サービスに知らせます。

それが役立つことを願っています。

于 2009-08-26T21:02:05.237 に答える
0

Web サービスから応答ステータス コードが返されるはずです。「200 - OK」が返されるまで、Web サービスへの呼び出しが成功したと見なさないでください。

于 2009-08-26T20:49:56.243 に答える