Ejecución de un cliente JAX-WS de servicios web no gestionados

WebSphere Application Server proporciona una implementación de cliente ligero de servicios web Java™ Platform, Standard Edition 6 (Java SE 6) que se basa en la API Java para la especificación Web Services (JAX-WS) 2.2 basada en XML. El cliente ligero para JAX-WS con WebSphere Application Server es un entorno de cliente Java SE 6 autónomo que permite ejecutar aplicaciones de cliente de servicios Web JAX-WS no gestionadas en un entorno no WebSphere para invocar servicios web alojados por el servidor de aplicaciones.

Antes de empezar

Supported configurations Supported configurations: Puede utilizar el cliente ligero para JAX-WS con WebSphere Application Server como tiempo de ejecución de cliente autónomo en un entorno Java SE puro o en un entorno OSGi. No se admite el funcionamiento del cliente ligero para JAX-WS dentro de entornos WebSphere Application Server o WebSphere Application Client. En esta versión del servidor de aplicaciones, con la excepción del cliente ligero de administración, otros tiempos de ejecución de cliente ligero proporcionados con el servidor de aplicaciones también pueden residir en la CLASSPATH y coexistir con el cliente ligero para JAX-WS. sptcfg

Antes de configurar un entorno de ejecución de cliente JAX-WS no gestionado, obtenga el archivo JAR(Java Archive) del cliente ligero para JAX-WS. Para obtener el cliente ligero para JAX-WS, instale WebSphere Application Server Versión 9.0 o el cliente de aplicaciones de WebSphere Application Server Versión 9.0. El cliente ligero del archivo JAR JAX-WS, com.ibm.jaxws.thinclient_8.5.0.jar, se encuentra en el directorio raíz_servidor_aplicaciones\runtimes.

Copie el cliente ligero para JAX-WS, el archivo com.ibm.jaxws.thinclient_8.5.0.jar y los archivos endorsed_apis_8.5.0.jar, en otras máquinas para crear un entorno de cliente ligero que permita la comunicación con el producto. Las copias del cliente ligero para JAX-WS están sujetas a los mismos términos y condiciones del acuerdo de licencia para el producto WebSphere donde se ha obtenido el cliente ligero para JAX-WS. Consulte los acuerdos de licencia para un uso correcto y otras limitaciones.

El cliente ligero para JAX-WS está soportado en los entornos siguientes:
  • IBM® Software Development Kits (SDK) Versión 6.0
  • SDK no IBM V6.0 con la limitación siguiente:
    • Limitación de Xerces en SDK no IBM

      Debe bajar Xerces-J Versión 2.6.2, y añadir el archivo a la vía de acceso de clases, cuando configure el entorno del cliente ligero para JAX-WS.

    • WS-SecurityKerberos en SDK no IBM

      WS-SecurityKerberos no se soporta con el Sun JDK u otros SDK no IBM. Las aplicaciones que se ejecutan en un entorno del Cliente ligero para JAX-WS que utilizan la protección de nivel de mensajes WS-Security y utilizan señales de seguridad de Kerberos como se describe en la especificación de Web Services Security Kerberos Token Profile 1.1 no funcionan correctamente en los JDK que no son de IBM. Esta limitación existe debido a una dependencia del proveedor JGSS de IBM que sólo está disponible dentro de los IBM SDK.

  • Entornos de ejecución OSGi de Equinox 3.6

Acerca de esta tarea

Configure un entorno de cliente ligero para JAX-WS completando los pasos siguientes.

Procedimiento

  1. Copie el cliente ligero del archivo JAR de JAX-WS, com.ibm.jaxws.thinclient_8.5.0.jar, en otras máquinas para crear un entorno de cliente ligero.
  2. Utilice Java Endorsed Standards Override Mechanism para omitir las API que están disponibles en el JDK en el sistema.

    Puesto que el cliente ligero para JAX-WS con WebSphere Application ServerVersión 9.0 exige API que son más actuales que las disponibles en los JDK para admitir las implementaciones JAX-WS 2.2 y JAXB 2.2, debe alterar temporalmente las API de JDK predeterminadas que utiliza el sistema por medio del Java Endorsed Standards Override Mechanism.

    Copie el archivo raíz_servidor_aplicaciones\runtimes\endorsed\endorsed_apis_8.5.0.jar en el directorio predeterminado, JAVA_JRE\lib\endorsed. Como alternativa, puede utilizar la propiedad java.endorsed.dirs para especificar un directorio de su elección. Si elige utilizar un directorio alternativo, se recomienda incluir sólo el archivo JAR endorsed_apis.

  3. Configure la vía de acceso. Especifique el mandato siguiente para añadir los directorios bin de Java a la vía de acceso:
    [Windows][z/OS]
    set PATH=<directori_bin_JDK>;%PATH%
    [AIX][HP-UX][Solaris][Linux]
    export PATH=<directorio_bin_JDK>:$PATH
  4. Configure la classpath.
    • Añada el archivo JAR del cliente ligero para JAX-WS a la definición de la vía de acceso de clases.
      Importante: Si el cliente ligero tiene que utilizar Java Message Service (JMS), todos los archivos JAR que sean necesarios deben estar en la variable classpath para JMS y para el cliente de manera que existan entradas para todos los archivos necesarios. De lo contrario, los archivos necesarios no se identificarán como instalados y listos para utilizarlos.
      [Windows][z/OS]
      set CLASSPATH=.;<directorio_instalación_cliente_ligero_jax_ws>\com.ibm.jaxws.thinclient_8.5.0.jar;
      <jars_de_aplicación>;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<directorio_instalación_cliente_ligero_jax_ws>/com.ibm.jaxws.thinclient_8.5.0.jar:
      <jars_de_aplicación>;$CLASSPATH
    • Si utiliza un SDK no IBM, obtenga un archivo xml-apis.jar y un archivo xercesImpl.jar Xerces desde el sitio web de Xerces y configure la definición de la vía de acceso de clases.
      [Windows][z/OS]
      set CLASSPATH=.;<directorio_instalación_Xerces>\xml-apis.jar;<directorio_instalación_Xerces>
      \xercesImpl.jar;%CLASSPATH%
      [AIX][HP-UX][Solaris][Linux][IBM i]
      export CLASSPATH=.:<directorio_instalación_Xerces>/xml-apis.jar:<directorio_instalación_Xerces>
      \xercesImpl.jar:$CLASSPATH
  5. Opcional: Implementar conjuntos de políticas del cliente.
  6. Configure SSL para el cliente.
    1. Añada las siguientes propiedades de sistema al mandato Java:
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props

      Puede obtener el archivo ssl.client.props de la instalación de WebSphere Application Server y modificarlo para adecuarlo a su entorno. Debe, al menos, actualizar la ubicación de los archivos de claves com.ibm.ssl.keyStore y com.ibm.ssl.trustStore del archivo ssl.client.props para que coincidan con la ubicación del entorno de destino.

      Por ejemplo, utilice estos valores de configuración SSL cuando ejecute la aplicación con JRE de Sun:
      com.ibm.ssl.protocol=SSL
      com.ibm.ssl.trustManager=SunX509
      com.ibm.ssl.keyManager=SunX509
      com.ibm.ssl.contextProvider=SunJSSE
      
      com.ibm.ssl.keyStoreType=JKS
      com.ibm.ssl.keyStoreProvider=SUN
      com.ibm.ssl.keyStore=/home/user1/etc/key.jks
      
      com.ibm.ssl.trustStoreType=JKS
      com.ibm.ssl.trustStoreProvider=SUN
      com.ibm.ssl.trustStore=/home/user1/etc/trust.jks

      El archivo del almacén de claves y el archivo del almacén de confianza se deben crear utilizando el programa de utilidad keytool de Java antes de ejecutar la aplicación. No se da soporte a la generación automática de archivos de claves con un JRE de un producto que no es de IBM.

  7. Ejecutar la aplicación cliente:
    • Escriba el mandato siguiente si ha copiado el archivo endorsed_apis_8.5.0.jar en el directorio JAVA_JRE\lib\endorsed predeterminado; por ejemplo:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <aplicación_cliente>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <aplicación_cliente>
    • Escriba el mandato siguiente si ha copiado el archivo endorsed_apis_8.5.0.jar en un directorio distinto del directorio JAVA_JRE\lib\endorsed predeterminado; por ejemplo:
      [Windows][z/OS]
      %JAVA_HOME%\bin\java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar> 
      -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <su_aplicación_cliente>
      [AIX][HP-UX][Solaris][Linux][IBM i]
      $JAVA_HOME/bin/java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_8.5.0.jar>
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <aplicación_cliente>

Resultados

Ha configurado un entorno de ejecución de cliente JAX-WS no gestionado para invocar servicios web alojados en WebSphere Application Server.
Avoid trouble Avoid trouble: El mandato siguiente muestra cómo visualizar la versión del cliente ligero que está ejecutando:
java -cp (wasHome)/runtimes/com.ibm.jaxws.thinclient_8.5.0.jar com.ibm.ws.webservices.Version
El ejemplo siguiente muestra la salida del mandato:
IBM Web services build: cf021412.02
IBM Web services release: 8.5.5
Time stamp: 5/14/14 21:11:46
gotcha

Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxwsthinclient
File name: twbs_jaxwsthinclient.html