2016-11-13 5 views
2

SOAP Webサービスは、プラットフォームおよび言語に依存しません。クライアントからパラメータを受け取り、クライアントに応答を返すことができます。例 - 都市を文字列パラメータとして渡し、天気という情報を返信します。
しかし、Javaオブジェクトを渡す必要がある場合は、というオブジェクトを取得し、彼のクレジットスコアを取得します。 (たとえば人物オブジェクト名、年齢、SSN、住所などのようなatributesあり) を(などの属性を持つ別のJavaオブジェクトにすることができ、それ自体に対処 - 通り、都市、郵便番号など)SOAP WebサービスでJavaオブジェクトがどのように渡されるか

は、SOAPサービスは、オブジェクトの権利を受け入れることができます(name、age、ssn、street、city、zip)としてサービスに渡す必要があります。

答えて

3
のように、プリミティブ情報をすべて抽出した後に渡す必要があります。

SOAPサービスですぐにオブジェクトを受け入れることができますか、またはすべてのプリミティブ情報を抽出した後に という人物オブジェクトを渡す必要がありますか? この情報ne edsを文字列またはintとしてサービスに渡す のみ?

は、あなたは、以下の点を知っている必要があり:

(1)SOAPは、2つの異なるアプリケーション間でのデータ交換のために(等ヘッダ、本体、要素に)いくつかの事前定義された仕様/フォーマットとプロトコルであります(同じまたは異なるプログラミング言語で開発された)。

(2)SOAPサービスを使用している場合は、SOAPクライアントです。

(3)他のユーザーに対してSOAPサービスを公開/提供した場合は、SOAPサービスプロバイダーです。

(4)SOAPサービスはそのままjavaオブジェクトをそのまま使用しません。むしろ、それらはxmlに変換され(マーシャリングと呼ばれます)、次に送受信されます

(5)したがって、SOAPサービスプロバイダを呼び出すと、person javaオブジェクトがXML形式にマーシャリングされ、SOAPサービスプロバイダに送信されます。

(6)SOAPサービスプロバイダは、xmlを受信し、プラットフォームに応じて(アンマーシャリングと呼ばれる)Java、または.netなどの表現に変換します。

(7)リクエストを処理した後、SOAPサービスプロバイダは応答(Object /何かをxmlに変換)を準備し、それを呼び出し元に送信します。

(8)マーシャリングと簡単にアンマーシャル(XMLおよびその逆へのJavaの間、すなわち、変換)を作るために、JAXBXMLBeansのようなJavaで利用可能ないくつかのツールがある、など

PS:私はちょうどあなたの理解のためにxml(これは一般的です)としてメッセージフォーマットを言及しましたが、それはアプリケーションが合意できる他のフォーマットかもしれません。

詳しくはhereをご覧ください。

関連する問題