2012-04-01 13 views
5

JAX-WSを使用したSOAPベースのWebサービスに関するいくつかの調査を行っており、クライアントに関する部分を理解するのが非常に複雑です。 もし私がいくつかの話題を私に説明してくれる人がいれば、私はそれをたくさん感謝します。私はSOAの本とGoogleも使用していますが、私は本当に混乱しているので、私はここで私はより正確な答えを得ることができます、私は必要なものに焦点を当てると思うのです。JAX-WS Webサービスを呼び出すための非同期クライアントテクニック

私たちは、同期と非同期の方法でWebサービスと通信できます。同期通信は、処理が終了するまで両者が互いに待たなければならないという欠点がある。

非同期クライアント私たちは2つのプログラミング・モデルを使用して非同期に通信することができます:1 - コールバック2-ポーリング

  • 疑い1:誰かが違いが何であるかを簡単な方法で私を説明していただけます、2つのモデルの長所と短所(コールバックとプール)

一度消費者(クライアント)を見つけるために、私もプロデューサー(Webサービス)のための方法がなければならないことを理解して非同期通信の話処理が終了しました。アドレッシングがあります。

  • ・ダウト2:あなたは簡単にどのように作品に取り組む説明してもらえますか?また、アドレス指定はコールバックとポーリングのテクニックにどのように関連していますか?

もう1つだけです。 Dispatch APIも私を多く混乱させています。彼らは動的なクライアントについて話し続けているからです。

  • ・ダウト3:彼らは、動的クライアントに関するすべての時間を話している場合はどのように非同期通信に派遣APIを関連していますか?
  • ダウト4: Dispatch API(MESSAGEおよびPAYLOAD)の2つの使用モード、使用するもの、およびそれらがJAXWSの非同期通信モデルにどのように関連していますか?

答えて

2
  1. 誰かが2つのモデルの違い、長所と短所(コールバックとプール)

コールバックを何であるかを簡単な方法で私を説明していただけます:実装は単純ではありません。
アドバンテージ:このアプローチは、ポーリング手法に忠実な、よりエレガントで体系的です。
- 短所:クライアントは、コールバックを使用してサーバーがコールバックできるメカニズムを持つ必要があります。

ポーリング:実装は簡単です。
- 利点:テクニックのシンプルさのため、普遍的です。このテクニックを使用すると、要求に対する更新が利用可能かどうかを確認することができます。
- 短所:帯域幅の浪費、サーバークライアントのタイミングの問題、クライアントからのポーリング要求があったときにサーバーが応答を保持する期間などはまだ来ていません。

2.アドレッシングの仕組みを簡単に説明できますか?また、アドレス指定はコールバックとポーリングのテクニックにどのように関連していますか?

アドレッシングを使用すると、以前にメッセージングシステムとトランスポートプロバイダ間で共有されていた情報をウェブサービスが理解できるようになりました。この使用例を考えてみましょう。最初に使用されたトランスポートは、リクエストとレスポンスの両方を送信するためのHTTPです。そして、このトランスポートの一部を変更することができます。あなたがwsアドレッシングを使用していた場合、トランスポートとアドレッシングに関連するすべての情報は、あなたのWebサービスが応答送信に動的にトランスポートを変更できるようにする石鹸畳み込み自体の一部になります。

Webサービスのアドレス指定は、サーバーからクライアントへのコールバックにも使用できます。このサービスは、WSDLで必要なコールバックのポートタイプを通知します。クライアントはこのポートタイプを実装し、WSアドレッシングを使用してコールバックエンドポイントのサービスに通知します。簡単な言葉で

、アドレッシングWSアドレスに、アドレスからのように、唯一のトランスポートヘッダに存在するであろう情報を含む石鹸envolopeに余分なタグを追加し、アクション名等

3.Howであります動的クライアントに関する常時話している場合、非同期通信に関連するAPIをディスパッチしますか?

Future<?> response = dispatch.invokeAsync(T, AsyncHandler); 

invokeAsyncメソッドはポーリング方法です。応答はすぐにユーザーに戻り、完了のためにポーリングされることがあります。その間、クライアントプログラムは他の作業を行うことができます。javax.xml.ws.Responseは、J2SE 5.0に含まれているjava.util.concurrent.Futureインタフェースを実装しています。 Responseオブジェクトは実際のレスポンスをgetメソッドで返します。レスポンスが返される準備ができていない場合はブロックされます。

4. Dispatch API(MESSAGEおよびPAYLOAD)の2つの使用モード、使用するもの、およびそれらがJAXWSの非同期通信モデルにどのように関連していますか?
メッセージングモードは、非同期通信には直接関係しません。メッセージングモードは、Webサービス要求で送信される情報の量を定義します。 メッセージモードは、SOAPバインディングが使用されている場合にのみ使用できます。

+0

非常に有用で正確な答えです。どうもありがとうございました。 – sfrj

関連する問題