2016-05-09 17 views
1

Ich habe einen Maultierfluss und ich habe diese Werte aus einem DB extrahiert. Ich verwende diesen Wert, um eine andere Datenbank zu aktualisieren, aber ich kann nicht auf den Wert zugreifen. Gibt es etwas, das ich vermisst habe? Ich habe versucht, es zu erfassen # mit [Nutzlast] und ich habe dieseWie kann man auf Payload-Werte in Mule zugreifen?

org.mule.api.processor.LoggerMessageProcessor: [{DELODNBLS=122, DELODNBR=1039168}] 

aber wenn ich es auf # geändert [payload.DELODNBLS] zeigt es Nullwerte.

org.mule.api.processor.LoggerMessageProcessor: null 

Ich habe versucht, es als ein Array zu ändern, aber es zeigt immer noch Nullwerte.

Dank Gurus wieder

Antwort

4

Wie Sie aus den eckigen Klammern sehen Ihre Nutzlast eine Arraylist von Karten ist.

Das bedeutet, dass Sie auf den Datensatz 0 zugreifen müssen. Dies ist normalerweise der Fall, wenn Abfrageergebnisse von db-Konnektoren in mule zurückgegeben werden. Sie müssen also genau das zu tun:

#[payload[0]['DELODNBLS']] 

Hope this

+0

Dank Mauro, das hat es getan –

1

#[payload[0].DELODNBLS] ermöglicht es hilft Ihnen, den Wert für DELODNBLS zu extrahieren.

0

Ihre Nachricht ist eine Sammlungsart. Sie können auf den Wert zugreifen, indem Sie zuerst in die Auflistung iterieren.

#[payload.get(0).get('DELODNBLS')]