Repositorio de Liberty[8.5.5.6 o posterior]

Configuración del cliente JAX-RS 2.0

Para Java API for XML RESTful Web Services 2.0, puede configurar el cliente para acceder a los puntos finales REST. JAX-RS 2.0 introduce una nueva API de cliente estandarizada para que pueda realizar solicitudes http a los servicios web RESTful remotos.

Acerca de esta tarea

Se necesita una instancia de Client para acceder a un recurso web utilizando la API de cliente. La instancia predeterminada de Client puede obtenerse invocando newClient o build en ClientBuilder.

Procedimiento

  1. Habilite la característica jaxrsClient-2.0 o jaxrs-2.0 en el archivo server.xml:
    <featureManager>
        <feature>jaxrs-2.0</feature>// Si sólo necesita la característica de cliente JAX-RS 2.0, puede habilitar jaxrsClient-2.0 en lugar de jaxrs-2.0
    </featureManager>
  2. Cree un cliente JAX-RS 2.0 y envíe la solicitud al servidor:
    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();        
          }   
    Para obtener más información sobre el cliente asíncrono de JAX-RS 2.0, puede ver Proceso asíncrono.

Qué hacer a continuación

  • Utilice la propiedad de cliente com.ibm.ws.jaxrs.client.timeout para establecer el valor de tiempo de espera.
    javax.ws.rs.client.ClientBuilder cb = ClientBuilder.newBuilder();
            cb.property("com.ibm.ws.jaxrs.client.timeout", "1000"); 
            Client c = cb.build();
    Consejo: El valor de la propiedad timeout está en milisegundos y el tipo debe ser long o int. Si el tipo del valor no es válido, aparece el siguiente mensaje:
    CWWKW0700E: El valor de tiempo de espera
    {0} que ha especificado en la propiedad com.ibm.ws.jaxrs.client.timeout en el lado
    del cliente JAX-RS no es válido. El valor se establece en 30000 de forma
    predeterminado. {3}  
  • Utilice las siguientes propiedades de cliente para el soporte de proxy del cliente:
    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
      Consejo: El tipo de valor de puerto de servidor proxy debe ser int. El valor predeterminado es 80. Si el tipo de valor no es válido, aparece el siguiente mensaje:
      CWWKW0701E: El valor de puerto de
      servidor proxy {0} que ha especificado en la propiedad com.ibm.ws.jaxrs.client.proxy.port
      en el lado del cliente JAX-RS no es válido. El valor se establece en 80 de forma
      predeterminado. {3}
    • com.ibm.ws.jaxrs.client.proxy.type
      Consejo: El valor del tipo de servidor proxy debe ser HTTP o SOCKS. El valor predeterminado es HTTP. Si el tipo del servidor proxy no es válido, aparece el siguiente mensaje:
      CWWKW0702E: El valor de tipo
      de servidor proxy {0} que ha especificado en la
      propiedad com.ibm.ws.jaxrs.client.proxy.type en el lado del cliente JAX-RS no es válido. 
      El valor se establece en HTTP de forma predeterminado. {3}
  • Utilice la propiedad de cliente com.ibm.ws.jaxrs.client.ltpa.handler para establecer la cookie SSO y establezca el valor en true.
    ClientBuilder cb = ClientBuilder.newBuilder();
            Client c = cb.build();
            c.property("com.ibm.ws.jaxrs.client.ltpa.handler", "true");
    Si desea utilizar la función SSL (capa de sockets seguros) en JAX-RS 2.0, debe habilitar la característica ssl-1.0 o appSecurity-2.0. Para la función de señal LTPA, la característica appSecurity-2.0 es obligatoria.
    Nota: La característica ssl-1.0 es una subcaracterística de la característica appSecurity-2.0. Si habilita la característica jaxrsClient-2.0 y la característica ssl-1.0, la característica appSecurity-2.0 se habilita automáticamente.
  • Utilice la propiedad de cliente com.ibm.ws.jaxrs.client.ssl.config para establecer el ID de referencia SSL de server.xml.
    ClientBuilder cb = ClientBuilder.newBuilder();
            cb.property("com.ibm.ws.jaxrs.client.ssl.config", "mySSLRefId"); 
            Client c = cb.build();
    Nota: La configuración en server.xml tiene este aspecto:
    <ssl id="mySSLRefId" keyStoreRef="clientKeyStore" trustStoreRef="clientTrustStore" />

Icono que indica el tipo de tema Tema de tarea

Términos y condiciones para centros de información | Comentarios


Icono de indicación de fecha y hora Última actualización: 15 de junio de 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_jaxrs2.0_clientconfig
Nombre de archivo:twlp_jaxrs2.0_clientconfig.html