1. ホーム
  2. web-services

[解決済み] JAX-RSとJAX-WSの違いは何ですか?

2023-01-20 01:59:29

質問

JAX-RSとJAX-WSに関するいくつかの記事を読んだ後、私はいくつかの質問があったので確認したいのですが?

  1. JAX-RSは、JAX-WSのように非同期リクエストを行うことができますか?
  2. JAX-RSは、Javaプラットフォーム上で動作していないWebサービスにアクセスできますか、またその逆も可能ですか?
  3. REST は、PDA や携帯電話などの限られたプロファイルのデバイスに特に有用である」というのはどういう意味ですか?
  4. JAX-RS は、XML メッセージや WSDL サービス API 定義を必要としない」とはどういう意味ですか?

どのように解決するのですか?

<ブロッククオート

JAX-RSは、JAX-WSのような非同期リクエストを行うことができますか?

1) JAX-RS APIが非同期リクエストのための特定のメカニズムを含むかどうかは分かりませんが、この答えはあなたが使うクライアント実装に基づいてまだ変わるかもしれません。

JAX-RSは、Javaプラットフォーム上で動作していないWebサービスにアクセスできますか、またその逆も可能ですか?

2) できない理由は思いつきません。

<ブロッククオート

REST は PDA や携帯電話などの限られたプロファイルのデバイスに特に有用である」とはどういう意味ですか?

3) RESTベースのアーキテクチャは、一般的にJSONのような軽量のデータ形式を使用してデータを送受信します。これは、XML を使用する JAX-WS とは対照的です。しかし、JAX-WSでは、XMLがどの程度使用されているかによって、JSONを使用するRESTがより軽量なオプションになるのです。

JAX-RSはXMLメッセージやWSDLサービスAPI定義を必要としないとはどういう意味でしょうか?

4) 3で述べたように、RESTアーキテクチャはデータの送受信にJSONを使うことが多いです。JAX-WSはXMLを使用します。JSONがXMLより圧倒的に小さいというわけではありません。JAX-WSの仕様が通信方法に多くのオーバーヘッドを含んでいることが主な理由です。

WSDLとAPIの定義についてですが、RESTではJAX-WSのようにメッセージタイプではなく、URI構造やHTTPコマンドを使ってAPIを定義することが多くなっています。これは、あなたのサービスの他のユーザーがあなたのサービスと話す方法を知ることができるように、WSDLドキュメントを公開する必要がないことを意味します。RESTでは、RESTサービスがどのように構成され、どのようなデータやHTTPコマンドが送信される必要があるかについて、他のユーザーに何らかの文書を提供する必要があることに変わりはありません。