Manejo de mensajes dañados en ASF
En los recursos del servidor de aplicaciones, el manejo de mensajes con formato incorrecto se maneja de forma ligeramente diferente al de otros lugares de IBM® MQ classes for JMS.
Para obtener información sobre la gestión de mensajes envenenados en IBM MQ classes for JMS, consulte Gestión de mensajes envenenados en clases IBM MQ para JMS.
Al utilizar los Recursos del servidor de aplicaciones (ASF), el ConnectionConsumer, y no MessageConsumer, procesa mensajes dañados. El ConnectionConsumer vuelve a colocar en cola mensajes de acuerdo con las propiedades BackoutThreshold y BackoutRequeueQName de la cola.
- Cuando la sesión es una sesión sin transacción, con AUTO_ACKNOWLEDGE o DUPS_OK_ACKNOWLEDGE, un mensaje solo se restituye después de un error del sistema, o si la aplicación termina de forma inesperada
- Cuando la sesión es no transaccional y utiliza CLIENT_ACKNOWLEDGE, el
servidor de aplicaciones puede restituir los mensajes sin acuse de recibo
invocando Session.recover().
Normalmente, la implementación de cliente de MessageListener o el servidor de aplicaciones llama a Message.acknowledge(). Message.acknowledge() reconoce todos los mensajes entregados en la sesión hasta ahora.
- Cuando la sesión es transaccional, el servidor de aplicaciones puede restituir los mensajes sin acuse de recibo invocando Session.rollback().
- Si el servidor de aplicaciones proporciona una XASession, los mensajes se confirman o restituyen dependiendo de una transacción distribuida. El servidor de aplicaciones se encarga de finalizar la transacción.