Apache Camel: Kann ich mehrere Anweisungen in den When-Teil der bedingten Choice-Anweisung einfügen?

7

Ich möchte die folgende Art von Routing erhalten:

  1. HTTP-POST-Nachricht mit dem XML-Body trägt CAMEL
  2. ein
  3. Ich speichere einige der Parameter des XML-Bodys
  4. Die Nachricht wird an einen externen Endpunkt weitergeleitet
  5. Der externe Endpunkt (externer Server) antwortet

- & gt; In diesem Moment möchte ich überprüfen, ob die Antwort vom externen Endpunkt ein HTTP 200 OK ist, das einen XML-Parameter enthält, der gleich SUCCESS ist. - & gt; Wenn ja, möchte ich einige der gespeicherten Parameter verwenden, um eine neue HTTP-Nachricht (Methode = PUT) zu erstellen und sie an einen externen Endpunkt zu senden

Das Problem, das ich gerade habe, ist folgendes:

%Vor%

Frage: Gibt es eine Idee, wie Sie diese zusätzlichen Anweisungen hinzufügen, wenn der HTTP-Antwortcode 200 OK ist? Es sieht so aus als ob ich keine zusätzlichen Anweisungen hinzufügen kann ... (Ich habe einen Fehler in meiner Eclipse IDE).

Vielen Dank im Voraus.

Hinweis: könnte es sein, dass ich die Nachricht routen muss, wenn die 200 OK mit einem "neuen Endpunkt" übereinstimmt und dann eine neue Route mit diesem neuen Endpunkt erstellt? ZB:

%Vor%

Wie soll ich in diesem Fall genau diesen 'Newendpunkt' definieren?

    
opstalj 10.02.2012, 12:32
quelle

2 Antworten

20

In der Programmiersprache DSLs wie Java können Sie Prädikate zusammen erstellen. Ich habe vor einigen Jahren einen Blog-Eintrag dazu bei: Ссылка

Zum Beispiel mit zwei Prädikaten

%Vor%

Sie können sie miteinander verketten, indem Sie und oder oder verwenden.

%Vor%

Und dann können Sie isOrm in der Route verwenden

%Vor%     
Claus Ibsen 14.02.2012, 07:13
quelle
4

yep, Sie können mehrere Anweisungen zwischen .when () und .otherwise () haben, und Sie können immer .endChoice () aufrufen, um jeden bedingten Block explizit zu beenden ...

zu Ihrer anderen Frage können Sie camel-direct verwenden, um mehrere Routen miteinander zu ketten usw.

    
Ben ODay 10.02.2012 21:53
quelle

Tags und Links