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: 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
- 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.
- 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.
- 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]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
set PATH=<directori_bin_JDK>;%PATH%
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
export PATH=<directorio_bin_JDK>:$PATH
- Configure la classpath.
- Opcional: Implementar conjuntos de políticas del cliente.
- Configure SSL para el cliente.
- 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.
- 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]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
%JAVA_HOME%\bin\java -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <aplicación_cliente>
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
![[IBM i]](../images/iseries.gif)
$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]](../images/windows.gif)
![[z/OS]](../images/ngzos.gif)
%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]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Solaris]](../images/solaris.gif)
![[Linux]](../images/linux.gif)
![[IBM i]](../images/iseries.gif)
$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: 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