2012-04-11 7 views
0

Wir verwenden ESB4-Proxy-Service mit In-Sequenz und Out-Sequenz. Die Nachricht wird während der Sequenz vermittelt und an den Endpunkt gesendet. Die Antwort geht nach out-Sequenz. Wir möchten die Antwort wie Auth-Fehler filtern und die eingehende Nachricht zum erneuten Versuch zum JMS-Speicher zurückgeben. Aber ich weiß nicht, wie ich die Nachricht in der Ausgangssequenz bekommen kann. Würde mich über die Hilfe freuen.Für ESB4, wie auf die In-Sequence-Nachricht bei Out Sequence zugegriffen wird

+0

Als Referenz können Sie den Code enthalten müssen Sie verwenden. Diese Frage ist ansonsten (zumindest für mich) etwas vage. –

+0

Vielleicht werde ich anders fragen. Wie greifen Sie auf die REQUEST-Nachricht in der Ausgangssequenz zu, wenn Sie die Antwortnachricht verarbeiten? Der Anwendungsfall besteht darin, dass ich die Anforderungsnachricht zum Speichern senden möchte, wenn die Antwort nicht dem entspricht, was ich erwartet habe. – user1294137

Antwort

0

Sie können einen Nachrichtenspeicher in Ihrer Ausgangssequenz definieren, um die Nachricht zu speichern ... Definieren Sie einen Nachrichtenspeicher, und verwenden Sie diesen im Speichermedium. Finden Proben hier

http://wso2.org/project/esb/java/4.0.0/docs/samples/store_n_forward_samples.html

+0

Entschuldigung, dass ich das Problem nicht klar erklärt habe. Wenn wir ein Geschäft in der folgenden Reihenfolge ablegen: wird die Antwortnachricht an den Laden gesendet. aber was wir wollen, ist die Anforderungsnachricht und nicht die Antwortnachricht. Der Anwendungsfall sieht folgendermaßen aus: Wenn der Antwortcode nicht 0 ist, wird eine Anforderungsnachricht an den Endpunkt gesendet. Dann müssen wir diese REQUEST-Nachricht erneut versuchen, indem Sie sie in den Nachrichtenspeicher einfügen. aber ich weiß nicht, wie ich die REQUEST-Nachricht bei outsequence bekommen kann. – user1294137

+0

Nicht sicher, dass dies mit dem Nachrichtenprozessor erreicht werden kann, da nach der erfolgreichen Zustellung der Nachricht die Nachricht aus dem Speicher entfernt wird. Aber Sie können einen Eigenschaftsmediator @ your inSequence definieren, um die eingehende Anfrage zu speichern und in Ihrem zu verwenden outsequenz, um die Nachricht erneut an denselben Endpunkt zu senden. – Ratha

Verwandte Themen