Wie kann man in Maultier in die Mitte des Flusses einbrechen und die Nachricht an den Client zurückgeben.

StackOverflow https://stackoverflow.com/questions/8846211

  •  27-10-2019
  •  | 
  •  

Frage

Ich habe einen Fluss in Maultier wie unten:

<flow name="MetaService">
    <http:inbound-endpoint address="http://localhost:8000/jcore/meta"  
transformer-refs="HttpParams" responseTransformer-refs="JavaObjectToJson">
    </http:inbound-endpoint>

    <component class = "com.java.Meta">
    <component class = "com.java.Meta2"

</flow>

Dieser Fluss tritt zuerst in meine erste Komponentenklasse ein: "com.java.meta". Und was auch immer ich"Rückkehr"Aus dieser Java -Klasse wird die Eingabe für meine zweite Komponentenklasse:"com.java.meta2".


Nun, was ich tun möchte, ist wie:

Ich möchte nach etwas suchen "Nutzlast" im Unterricht "Meta"Und wenn es nicht existiert, möchte ich a zurückgeben Java Hashmap an den Kunden (in Form von JSON), das die enthält Error Schlüssel.

Und wenn es existiert, möchte ich dasselbe zurückgeben. "Nutzlast"zur zweiten Komponentenklasse"Meta2".

Wie kann ich das erreichen .. ??

War es hilfreich?

Lösung

Wickeln Sie Ihre zweite Komponente in einen Auswahlrouter ein und senden Sie die aktuelle Nachricht zurück. Die Kartennutzlast enthält die Schlüssel -Taste "Fehler".

Sie können einen groovigen Ausdruck verwenden:

#[groovy:payload.containsKey('error')]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top