Una especificación de activación JMS se asocia con uno o más beans controlados por mensajes y proporciona la configuración necesaria para que reciban mensajes.
Puede crear una especificación de activación JMS si desea utilizar un bean controlado por mensajes para comunicarse con el proveedor de mensajería predeterminado a través de JCA (Java EE Connector Architecture) 1.5. JCA proporciona conectividad Java entre los servidores de aplicaciones como, por ejemplo, WebSphere Application Server, y sistemas de información de empresa. Proporciona un método estandarizado de integrar los proveedores JMS con servidores de aplicaciones Java EE y proporciona una infraestructura para intercambiar datos con los sistemas de empresa, donde los datos se transfieren en forma de mensajes.
Todas las propiedades de configuración de especificación de activación excepto Nombre, Nombre JNDI, Nombre JNDI de destino y Alias de autenticación se sustituyen con propiedades de activación de configuración nombradas adecuadamente en el descriptor de despliegue de un bean EJB controlado por mensajes 2.1 o posterior asociado. Para un bean controlado por mensajes EJB 2.0, las propiedades Tipo de destino, Duración de suscripción, Modalidad de reconocimiento y Selector de mensajes quedan alteradas temporalmente por los elementos correspondientes del descriptor de despliegue. Para cualquiera de los dos tipos de bean, la propiedad Nombre JNDI de destino puede ser sobrescrita por un valor especificado en los enlaces del bean controlado por mensajes.
Las propiedades de la especificación de activación influyen en cómo el proveedor de mensajería predeterminado elige el motor de mensajería al que se conecta la aplicación de beans controlados por mensajes. De forma predeterminada, el entorno conecta automáticamente aplicaciones a un motor de mensajería disponible en el bus. Sin embargo, puede especificar información detallada de configuración adicional para influir en el proceso de conexión. Por ejemplo, para identificar los servidores de rutina de carga especiales o para limitar la conexión con un subgrupo de motores de mensajería disponibles, o para mejorar la disponibilidad o el rendimiento, o para garantizar el proceso secuencial de los mensajes recibidos.Para obtener más información sobre porqué y cómo hacerlo, consulte el tema Cómo se conectan las aplicaciones JMS a un motor de mensajería de un bus.
El separador Configuración muestra las propiedades de configuración para este objeto. Estos valores de propiedad se conservan incluso si se detiene el entorno de ejecución y luego se reinicia. Consulte las descripciones de tarea del Information Center si desea más información sobre cómo aplicar cambios de configuración en el entorno de ejecución.
Especifica el nivel de topología más alto en el que los servidores de aplicaciones pueden utilizar este objeto de recurso.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Especifica un proveedor de JMS, que permite mensajería asíncrona basada en JMS (Java Message Service). Proporciona fábricas de conexiones de J2EE para crear conexiones para destinos de cola JMS o de tema específicos. Se utilizan objetos administrativos del proveedor JMS para gestionar recursos JMS para el proveedor JMS asociado.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
El nombre de visualización necesario del recurso.
| Información | Valor |
|---|---|
| Obligatorio | Sí |
| Tipo de datos | Serie |
Nombre JNDI del recurso.
| Información | Valor |
|---|---|
| Obligatorio | Sí |
| Tipo de datos | Serie |
Descripción opcional del recurso.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Área de texto |
Determina si el bean controlado por mensajes utiliza un destino de cola o de tema.
| Información | Valor |
|---|---|
| Obligatorio | Sí |
| Tipo de datos | lista desplegable |
| Rango |
|
Nombre JNDI del destino.
Seleccione el tipo de destino en la propiedad Tipo de destino.
Para adaptadores de recursos que admiten JMS tiene que asociar javax.jms.Destinations a una especificación de activación, de modo que el adaptador de recursos pueda atender los mensajes del destino de JMS. En este caso, el administrador configura un objeto administrado J2C que implementa la interfaz javax.jms.Destination y la enlaza a la JNDI.
Puede configurar objetos administrados J2C para utilizar una clase ActivationSpec que implementa un método setDestination(javax.jms.Destination). En este caso, puede especificar el nombre de JNDI de destino (es decir, el nombre de JNDI para el objeto administrado J2C que implementa el javax.jms.Destination).
Durante el inicio de la aplicación, cuando se inicializa la especificación de activación como parte de la activación del punto final, el servidor utiliza el nombre de JNDI de destino para buscar el objeto administrado de destino, luego lo establece en la instancia de especificación de activación.
| Información | Valor |
|---|---|
| Obligatorio | Sí |
| Tipo de datos | Serie |
Selector de mensajes JMS utilizado para determinar qué mensajes recibe el bean controlado por mensajes. El valor es una serie que se utiliza para seleccionar un subconjunto de los mensajes disponibles. La sintaxis se basa en un subconjunto de la sintaxis de expresión condicional SQL 92, tal como se describe en la especificación JMS. Consulte el Information Center para obtener más información.
JMSType='car' AND color='blue' AND weight>2500
La serie del selector puede hacer referencia a campos de la cabecera del mensaje JMS y a campos de las propiedades del mensaje. Los selectores de mensaje no pueden hacer referencia a los valores del texto.
Un valor nulo (una serie vacía) indica que hay un selector de mensajes para el consumidor de mensajes.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Nombre del bus al que se debe conectar.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Personalizado |
Forma en que la sesión reconoce los mensajes que recibe.
El acuse de recibo se envía cuando se suprime el mensaje.
El mensaje se suprime cuando se inicia el bean, si la calidad del servicio se establece en Mejor esfuerzo no persistente. Para todas las demás calidades de servicio, el mensaje se suprime cuando se completa el bean.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |
| Rango |
|
Nombre de un destino que identifica un grupo de motores de mensajería. Especifique el tipo de destino utilizando la propiedad Tipo de destino.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Tipo del destino nombrado en la propiedad Destino.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |
| Rango |
|
Esta propiedad especifica la importancia del grupo de destino.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |
| Rango |
|
Nombre de la cadena de transporte de entrada que la aplicación debe utilizar como destino al conectarse a un motor de mensajería en un proceso distinto a la aplicación. Si selecciona un motor de mensajería de otro proceso, se puede realizar una conexión sólo si el motor de mensajería está en un servidor que ejecuta la cadena de transporte de entrada especificada. Consulte el Information Center para obtener más información.
Si el motor de mensajería seleccionado está en el mismo servidor que la aplicación, se realiza una conexión directamente desde el proceso y se ignora esta propiedad de cadena de transporte.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Lista separada por comas de tripletes de puntos finales, con la sintaxis nombreHost:númeroPuerto:nombreCadena, utilizada para conectarse a un servidor de rutina de carga. Por ejemplo, Merlin:7276:BootstrapBasicMessaging,Gandalf:5557:BootstrapSecureMessaging.
Si no se especifica el nombre de host, se utiliza localhost como valor predeterminado.
Si se especifica el número de puerto, se utiliza 7276 como valor predeterminado.
Si no se especifica el protocolo, como valor predeterminado se utilizará una cadena predefinida como BootstrapBasicMessaging.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Área de texto |
Número máximo de mensajes recibidos del motor de mensajería en un solo lote.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Entero |
| Rango | 1 a 2147483647 |
Número máximo de puntos finales a los que se entregan simultáneamente los mensajes.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Entero |
| Rango | 1 a 2147483647 |
Estos parámetros permiten la detención automática de un punto final cuando el número de mensajes que fallan de forma secuencial alcanza el límite que se especifique. Esto ayuda a distinguir entre uno o dos mensajes que fallan debido a problemas con los propios mensajes, y un problema del recurso del sistema que genera muchos mensajes que fallan de forma secuencial.
Cuando un punto final se detiene automáticamente, el Estado en el panel de la consola de administración es rojo. Se debe reiniciar manualmente pulsando Reanudar.
Después de reiniciar un punto final, se reintentan los mensajes erróneos que causaron la detención del punto final. Si siguen fallando, se trasladan a un destino de excepción, si se ha configurado alguno.
Habilitar la detención automática de un punto final de acuerdo con los parámetros siguientes.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Booleano |
El punto final se detendrá cuando el número de mensajes que fallen secuencialmente alcance el límite configurado. Debido a las dependencias de proceso en el MDB el número de mensajes real procesados puede superar este valor.
Esta propiedad no está habilitada a menos que la propiedad Detener automáticamente puntos finales en anomalía de mensaje repetido esté habilitada.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Entero |
Cualquier mensaje que el MDB no pueda procesar pero que no haya alcanzado el límite máximo de entregas anómalas sólo se reintentará después de que haya transcurrido este periodo de tiempo (en milisegundos). Puede que se intenten otros mensajes durante este periodo, a menos que el umbral de errores secuenciales y la concurrencia máxima estén establecidos en 1.
Establecer un retardo entre los reintentos de un mensaje que falla reduce el número de mensajes que se mueven innecesariamente al destino de excepción antes de que se detenga el MDB. Para minimizar el número de mensajes que se mueven, haga que este retardo sea mayor que el intervalo de tiempo esperado entre los mensajes que llegan al destino.
Esta propiedad no está habilitada a menos que la propiedad Detener automáticamente puntos finales en anomalía de mensaje repetido esté habilitada.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Entero |
| Rango | La hora en milisegundos. El valor 0 indica que no hay ningún retraso entre reintentos. |
Indica si una suscripción de tema JMS es duradera o no.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |
| Rango |
|
Nombre de suscripción necesario para suscripciones de tema duraderas. Campo necesario cuando se utiliza una suscripción de tema duradera.
Este nombre de suscripción debe ser exclusivo dentro de un identificador de cliente dado.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Identificador de cliente de JMS necesario para las suscripciones de tema duraderas en todas las conexiones creadas mediante esta especificación de activación.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Nombre del motor de mensajería utilizado para almacenar los mensajes entregados a suscripciones duraderas para los objetos creados desde esta especificación de activación JMS. Este campo es necesario si se utiliza una suscripción de tema duradera.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Serie |
Cuando esta opción esté habilitada, el sistema sólo serializará los datos de los mensajes de objeto recibidos a través de esta especificación de activación cuando sea absolutamente necesario. Las aplicaciones deben tratar los datos obtenidos de estos mensajes como sólo de lectura.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Booleano |
Cuando está opción esté habilitada, los datos de los mensajes de Objeto/Bytes reenviados a través de esta especificación de activación cuya carga útil se haya modificado no se copiarán cuando se haya establecido en el mensaje y el sistema sólo serializará los datos del mensaje cuando sea absolutamente necesario. Las aplicaciones que envían estos mensajes no deben modificar los datos una vez que se han establecido en el mensaje.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Booleano |
La lectura anticipada es una optimización que de forma preventiva asigna mensajes a consumidores. Esto mejora los tiempos para cumplir las solicitudes del consumidor.
Los mensajes asignados a un consumidor se bloquean en el servidor y ninguno de los consumidores de ese destino pueden consumirlos. Los mensajes asignados a un consumidor, pero no consumidos antes de que se cierre el consumidor, se desbloquean posteriormente en el servidor y quedan disponibles para poder ser recibidos por otros consumidores.
Puede alterar temporalmente esta propiedad para destinos de JMS individuales estableciendo la propiedad Lectura anticipada en el destino de JMS.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |
| Rango |
|
Esta propiedad sólo se utiliza cuando la aplicación MDB se ejecuta en un servidor que sea miembro del bus que la aplicación tiene como destino. No tiene ningún efecto cuando el MDB se ejecuta en un servidor que no es miembro del bus de destino.
Si la aplicación MDB se ejecuta en un servidor que es miembro del bus de destino, si se habilita esta opción se permite a la aplicación MDB procesar mensajes tanto si el servidor también aloja un motor de mensajería en ejecución como si no. Si esta opción no se habilita, las aplicaciones MDB que se encuentran en servidores que no tengan un ME local en ejecución no procesarán mensajes.
Para obtener más información consulte el tema Cómo se conecta un bean controlado por mensajes en un clúster.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Booleano |
Retardo (en segundos) entre los intentos para conectarse a un motor de mensajería, tanto para la conexión inicial como para cualquier intento posterior de establecer una mejor conexión.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | Entero |
| Rango | 1 a 2147483647 |
Nombre de un alias de autenticación J2C utilizado para la autenticación gestionada por componentes de conexiones con el bus de integración de servicios.
Un alias de autenticación de Java Platform, Enterprise Edition (Java EE) Connector Architecture (JCA) especifica el ID de usuario y la contraseña utilizados para autenticar la creación de una nueva conexión con el proveedor de JMS.
Los campos de propiedades personalizadas de nombre de usuario y contraseña deben dejarse sin especificar si se utiliza el campo del alias de autenticación. Las propiedades del alias de autenticación establecidas como parte del despliegue de aplicaciones tienen prioridad sobre las propiedades establecidas en el objeto administrativo de especificación de activación.
Sólo el alias de autenticación se escribe siempre a archivo sin cifrar, aún cuando sea para el registro cronológico de recuperación de transacciones. El servicio de seguridad se utiliza para proteger el nombre de usuario real y la contraseña.
Durante el inicio de la aplicación, cuando se inicializa la especificación de activación como parte de la activación del punto final, el servidor utiliza el alias de autenticación para recuperar el nombre de usuario real y la contraseña de seguridad, luego lo establece en la instancia de especificación de activación.
| Información | Valor |
|---|---|
| Obligatorio | No |
| Tipo de datos | lista desplegable |