2017-09-28 7 views
1

Quelqu'un pourrait-il me diriger vers une référence sur la configuration de DLQ sur WLS liberty profile version 16.0.0.2 en utilisant le fournisseur de messagerie JMS Liberty intégré? J'ai une file d'attente configurée avec un écouteur spring jms et lorsque le programme d'écoute de messages lance une exception RuntimeException, le message doit passer à la file d'attente des lettres après quelques tentatives.WebSphere liberty wasJmsServer Dead Letter queue

Merci.

+0

Vous n'avez pas mentionné quel fournisseur JMS vous utilisez. S'agit-il du [fournisseur de messagerie JMS intégré de Liberty] (https://www.ibm.com/support/knowledgecenter/en/SSAW57_liberty/com.ibm.websphere.wlp.nd.multiplatform.doc/ae/cwlp_msg_embedded.html)? –

+0

C'est exact. Je mets à jour la question. Merci – nkare

Répondre

4

Avec la fonction wasJmsServer, le terme est la destination d'exception. Cela peut être configuré en tant qu'attribut sur l'objet file d'attente. Cela fait référence au nom d'une autre file d'attente. A titre d'exemple:

<messagingEngine> 
    <queue id="dlq" /> 
    <queue id="myQueue" exceptionDestination="dlq" /> 
</messagingEngine> 

il y a un nom par défaut pour la destination d'exception qui est _SYSTEM.Exception.Destination, donc si vous avez ceci:

<messagingEngine> 
    <queue id="_SYSTEM.Exception.Destination" /> 
    <queue id="myQueue" /> 
</messagingEngine> 

alors vous devriez avoir tous les messages « mauvais » sur la file d'attente par défaut . Par défaut, les messages ne seront envoyés à la destination d'exception que si la livraison a échoué 5 fois. Cela peut être remplacé par le réglage maxRedeliveryCount:

<messagingEngine> 
    <queue id="_SYSTEM.Exception.Destination" /> 
    <queue id="myQueue" maxRedeliveryCount="2"/> 
</messagingEngine> 

La configuration de c'est disponible dans le Knowledge Center for WebSphere Liberty.