JAX-RS 2.0 クライアントの構成

Java API for XML RESTful Web Services 2.0 では、REST エンドポイントにアクセスするようにクライアントを構成できます。JAX-RS 2.0 では、リモート RESTful Web サービスに HTTP 要求を行えるように、新しい標準化された Client API が導入されています。

このタスクについて

Client API を使用して Web リソースにアクセスするには、Client のインスタンスが必要です。デフォルトの Client のインスタンスは、ClientBuildernewClient または build を呼び出すことで取得できます。

手順

JAX-RS 2.0 クライアントを作成し、要求をサーバーに送信します。
javax.ws.rs.client.ClientBuilder cb = ClientBuilder.newBuilder();

javax.ws.rs.client.Client c = cb.build();
String res = null;

try {
	res = c.target("<Resource_URL>")
             .path("<PATH>")
             .request()
             .get(String.class);
	} catch (Exception e) {
      	res = "[Error]:" + e.toString();
      } finally {
            c.close();        
      }   
クライアント API での非同期処理について詳しくは、非同期処理または「JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services」(「仕様」) の第 8 章を参照してください。

次のタスク

  • com.ibm.ws.jaxrs.client.connection.timeout クライアント・プロパティーおよび com.ibm.ws.jaxrs.client.receive.timeout クライアント・プロパティーを使用して、タイムアウト値を設定します。
    • com.ibm.ws.jaxrs.client.connection.timeout
      javax.ws.rs.client.ClientBuilder cb = ClientBuilder.newBuilder();
      cb.property("com.ibm.ws.jaxrs.client.connection.timeout", "1000"); 
      Client c = cb.build();
    • com.ibm.ws.jaxrs.client.receive.timeout
      javax.ws.rs.client.ClientBuilder cb = ClientBuilder.newBuilder();
      cb.property("com.ibm.ws.jaxrs.client.receive.timeout", "1000"); 
      Client c = cb.build();
    ヒント: タイムアウト・プロパティーの値はミリ秒単位であり、タイプは long または整数です。値のタイプが無効の場合、以下のメッセージが表示されます。
    CWWKW0700E: JAX-RS クライアント・サイドのプロパティー com.ibm.ws.jaxrs.client.receive.timeout で指定されたタイムアウト値 {0} が無効です。値はデフォルトの 30000 に設定されています。{3}
  • クライアント・プロキシー・サポートに関する次のクライアント・プロパティーを使用します。
    ClientBuilder cb = ClientBuilder.newBuilder();
    cb.property("com.ibm.ws.jaxrs.client.proxy.host", "hostname");
    cb.property("com.ibm.ws.jaxrs.client.proxy.port", "8888";);
    cb.property("com.ibm.ws.jaxrs.client.proxy.type", "HTTP");
    
    Client c = cb.build();  
    • com.ibm.ws.jaxrs.client.proxy.host
    • com.ibm.ws.jaxrs.client.proxy.port
      ヒント: プロキシー・サーバー・ポート値のタイプは整数でなければなりません。デフォルト値は 80 です。値タイプが無効の場合、以下のメッセージが表示されます。
      CWWKW0701E: JAX-RS クライアント・サイドのプロパティー com.ibm.ws.jaxrs.client.proxy.port で指定されたプロキシー・サーバー・ポート値 {0} が無効です。値はデフォルトの 80 に設定されています。{3}
    • com.ibm.ws.jaxrs.client.proxy.type
      ヒント: プロキシー・サーバー・タイプの値は、HTTP または SOCKS でなければなりません。デフォルト値は HTTP です。プロキシー・サーバーのタイプが無効の場合、以下のメッセージが表示されます。
      CWWKW0702E: JAX-RS クライアント・サイドのプロパティー com.ibm.ws.jaxrs.client.proxy.type で指定されたプロキシー・サーバー・タイプ値 {0} が無効です。値はデフォルトの HTTP に設定されています。{3}
  • LTPA トークン認証情報を検証するように JAX-RS 2.0 クライアントを構成します
  • SSL を使用して JAX-RS 2.0 クライアントを保護します
  • com.ibm.ws.jaxrs.client.disableCNCheck クライアント・プロパティーを使用して共通名検査を無効にします。
    ClientBuilder cb = ClientBuilder.newBuilder();
    cb.property("com.ibm.ws.jaxrs.client.disableCNCheck", true);

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxrs2
ファイル名:twbs_jaxrs2.0_client.html