2017-09-28 2 views
1

Kann mir jemand auf eine Referenz verweisen bei der Einrichtung von DLQ auf WLS Liberty-Profil Version 16.0.0.2 mit Liberty Embedded JMS Messaging Provider? Ich habe eine Warteschlange mit einem Spring-Jms-Listener konfiguriert und wenn der Nachrichten-Listener eine RuntimeException auslöst, sollte die Nachricht nach wenigen Wiederholungen in die Nachrichtenwarteschlange gehen.WebSphere liberty wasdJmsServer Dead Letter Warteschlange

Danke.

+0

Sie haben nicht erwähnt, welchen JMS-Provider Sie verwenden. Ist es der [Liberty Embedded JMS Messaging Provider] (https://www.ibm.com/support/knowledgecenter/en/SSAW57_liberty/com.ibm.websphere.wlp.nd.multiplatform.doc/ae/cwlp_msg_embedded.html)? –

+0

Das ist richtig. Ich werde die Frage aktualisieren. Vielen Dank – nkare

Antwort

4

Mit der Funktion wasJmsServer ist der Begriff das Ausnahmeziel. Dies kann als Attribut für das Warteschlangenobjekt konfiguriert werden. Dies verweist auf den Namen einer anderen Warteschlange. Als Beispiel:

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

gibt es einen Standardnamen für die Ausnahme Ziel, die _SYSTEM.Exception.Destination ist, also, wenn Sie diese haben:

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

dann sollten Sie alle haben die ‚schlechten‘ Nachrichten auf der Standard-Warteschlange . Standardmäßig werden Nachrichten nur an das Ausnahmeziel gesendet, wenn die Zustellung fünfmal fehlgeschlagen ist. Dies kann mit der maxRedeliveryCount Einstellung außer Kraft gesetzt werden:

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

Die Konfiguration für diesen in den Knowledge Center for WebSphere Liberty zur Verfügung steht.

Verwandte Themen