Wie legen Sie den Schlaf in den Fluss in Mulesoft, ohne auf die message-payload
Möchte ich einfügen, Skript zur Verzögerung der Verarbeitung fließen in Mulesoft. Ich habe versucht, die insert-Skript in groovy aber ich verlor die messagge Nutzlast, also wenn ich get-message-payload recived null-Zeiger.
Wie kann ich den zu verlieren Sie nicht die message-payload?
Dank
- Könnten Sie teilen, was Sie haben versucht, so weit? Ihre flow-einschließlich der groovy-Skript?
- Lege ich die Komponente "Skript", in der Strömung, und in-Fenster auf den Abschnitt allgemein-->Skript-Text, den ich setzen sleep(10000)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie Groovy Komponente, die in Sie fließen,dann können Sie festlegen, sleep (), wie folgt :-
Und erinnern zu zurück Nachricht.Nutzlast in Groovy, so dass Sie bekommen können, die Nutzlast am Ende, oder sonst erhalten Sie null Nutzlast
Groovy ein Problem des Lösens der Nutzlast, wenn Sie nicht wieder am Ende, also in Groovy Sie zurückgeben müssen, Nutzlast am Ende, und das ist der Grund, warum Sie erhalten null Nutzlast
Alternativ können Sie Ausdruck-Komponente wie folgt:-
Können Sie anrufen Thread.Schlaf von einer Java-Komponente, MEL-Komponente oder sogar eine Groovy-Komponente.
Dies ist jedoch typischerweise ein design-Fehler, es sei denn, Sie sind etwas testen. Wenn dies für die Produktion (und eine Verzögerung ist wirklich-wirklich-wirklich notwendig) auch andere Lösungen wie verzögerte Nachrichten mittels JMS.
In Mule 4 sollten Sie die Runtime - "warten" - Funktion. Jede andere alternative wird block alle deine threads.
https://docs.mulesoft.com/mule-runtime/4.1/dw-runtime-functions-wait
Können Sie groovy-code wie unten:
Können Sie groovy code ist, der hier, wie weiter unten können Sie.
Können Sie Gebrauch machen von Groovy-Komponente hinzufügen Verzögerung.