Dynamisches Weiterleiten von Nachrichten in WSO2 ESB basierend auf einer XML-Konfigurationsdatei

Ich versuche, eine Nachricht basierend auf Informationen in einem XML-Snippet weiterzuleiten, das als lokaler Eintrag gespeichert ist (key = mapping_id_ep_v1.xml). Die ID, die zum Nachschlagen des richtigen Endpunkts verwendet wird und Teil des Nachrichtentexts ist.

Dies ist das XML-Snippet, das zum Zuordnen von IDs zu Endpunkten verwendet wird:

<mappings>
    <mapping id="ep_1">http://localhost:8280/services/ep_1</mapping>
    <mapping id="ep_2">http://localhost:8280/services/ep_2</mapping>
    <mapping id="ep_3">http://localhost:8280/services/ep_3</mapping>
<mappings>

Ich rufe die ID aus dem Body ab, um den Endpunkt mit der folgenden Anweisung zu ermitteln:

<property name="LOOK-UP" expression="//controleFile/id" />

Ich kann die XML-Datei mit dem folgenden Eintrag in einer Sequenz in eine Eigenschaftendatei laden:

<property name="MAPPING" expression="get-property('mapping_id_ep_v1.xml')" />

Ich protokolliere die Eigenschaft mit der folgenden Anweisung:

<log level="custom">
    <property name="Look-up" expression="get-property('LOOK-UP')" />
    <property name="Mapping" expression="get-property('MAPPING')" />
</log>

So weit, ist es gut. Ich konnte nicht herausfinden, wie der richtige Endpunkt aus der MAPPING-Eigenschaft abgerufen werden kann. Kann mir jemand helfen?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage