Para incluir nodos que utilizan transporte
JMS, como los nodos JMS y SOAP, en transacciones coordinadas XA, debe
realizar una configuración adicional.
Si requiere coordinación de
transacciones, elija un proveedor JMS que cumpla con la
Java™
Message Service Specification, versión 1.1 y que dé soporte a la
API XAResource de JMS durante la sesión JMS.
Si especifica su propio proveedor JMS utilizando el servicio configurable JMSProviders, establezca el atributo jmsProviderXASupport en True para indicar que el proveedor JMS seleccionado soporta las transacciones coordinadas XA. Si establece esta propiedad en True y el proveedor JMS seleccionado no soporta las transacciones XA, se genera una excepción.
Si establece esta propiedad en False, pero la propiedad Modalidad de transacción en el nodo está establecida en Sí y la propiedad del flujo de mensajes Transacción coordinada está seleccionada, se genera una excepción.
Si el diseñador de
mensajes ha especificado un proveedor que no se ajusta a la especificación
de XA, sólo se soporta la modalidad no transaccional. En este caso, debe
establecer la propiedad Modalidad de
transacción en Ninguna
para todos los nodos JMS y SOAP que
utilizan transporte JMS.
Para configurar los nodos:
- Vaya a la perspectiva
Desarrollo de aplicaciones de intermediario.
- Establezca la propiedad de flujo de mensajes
Transacción coordinada en
sí en las propiedades del archivo BAR.
- Para cada nodo que utilice transporte JMS que sea necesario en la transacción
coordinada XA, establezca la propiedad Modalidad de transacción en
Sí en el editor de flujos de mensajes.
- Cree una Fábrica de conexiones de cola y utilice el nombre
predeterminado, recoverXAQCF, o proporcione su propio
nombre. Consulte el nodo JMSInput
o JMSOutput para obtener más
información sobre cómo crear objetos administrados JNDI.
- En sistemas distribuidos, debe configurar una sección para cada
proveedor JMS que desee utilizar, antes del despliegue.
En la tabla siguiente se muestran los archivos de conmutación
de proveedor JMS que se proporcionan en cada sistema operativo.
Plataforma |
Archivo de 32 bits |
Archivo de 64 bits |
AIX
|
|
libJMSSwitch.so |
HP-Itanium
|
|
libJMSSwitch.so |
Linux en POWER
|
|
libJMSSwitch.so |
Linux en System
z
|
|
libJMSSwitch.so |
Linux en x86
|
libJMSSwitch.so |
|
Linux en
x86-64
|
|
libJMSSwitch.so |
Solaris en SPARC
|
|
libJMSSwitch.so |
Solaris
en x86-64
|
|
libJMSSwitch.so |
Windows en x86
|
JMSSwitch.dll |
|
Windows en x86-64
|
JMSSwitch32.dll |
JMSSwitch.dll |
Seleccione el enlace adecuado para obtener detalles de esta tarea en
el sistema o sistemas operativos que su empresa utilice:
Para obtener más información, consulte los temas siguientes:
En z/OS, el único
proveedor JMS que está soportado es IBM®
WebSphere MQ Java Client, y la única modalidad de
transporte soportada para ese cliente es la modalidad BIND; no se
requieren pasos de configuración adicionales.
Es posible que el proveedor JMS proporcione
archivos JAR adicionales que son necesarios para el soporte transaccional;
para obtener más información, consulte la documentación
que se proporciona con el proveedor JMS. Por ejemplo, en sistemas
distribuidos, el proveedor JMS de
WebSphere MQ
proporciona un archivo JAR adicional,
com.ibm.mqetclient.jar.
Debe
añadir cualquier archivo JAR adicional al directorio shared_classes del intermediario:

En Linux y UNIX: var/mqsi/shared-classes.
En Windows, %ALLUSERSPROFILE%\Application
Data\IBM\MQSI\shared-classes, donde
%ALLUSERSPROFILE% es la variable de entorno que define
el directorio de trabajo del sistema. El directorio predeterminado depende del sistema operativo.- En Windows XP y Windows Server 2003: C:\Documents
and Settings\All Users\IBM\MQSI\shared-classes
- En Windows Server 2008: C:\ProgramData\IBM\MQSI\shared-classes
Puede que el sistema no utilice el valor estándar; utilice %ALLUSERSPROFILE% para asegurarse de que accede a la ubicación correcta.
Para
obtener más información, consulte la sección sobre cómo hacer que el
cliente de proveedor JMS esté disponible para los nodos JMS en
Nodo JMSInput.
Opcional:
Para proteger la fábrica de conexiones JMS, los enlaces JNDI, o ambas
cosas, consulte Proteger conexiones JMS y búsquedas JNDI.