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?