Мул исходящих свойств недоступен во втором потоке вызовов
Если из мула flowA, я делаю http-запрос к потоку B и потоку C последовательно. Я установил исходящие свойства в потоке A, которые я получаю как входящие свойства в потоке B, но не в потоке C? Это ожидается? Если так, то почему?
3 ответа
Если вам нужно, чтобы значение было доступно во всем потоке, используйте область вызова (set-variable, чтобы установить, flowVars[], чтобы прочитать его).
Вы упомянули, что вызов от FlowA выполняет http-запрос к потоку B и потоку C последовательно, но не может упомянуть, как вызывается поток C после потока B. Сценарии
1) FlowA вызывает FlowC через запрос http 2) FlowA вызывает FlowC через ссылку на поток 3) FlowB вызывает FlowC через запрос http 4) FlowB вызывает поток FlowC через ссылку на поток.
Если его случай 3, то очевидно, исходные исходные свойства будут потеряны.
Это ожидаемое поведение исходящих свойств.
Скопированный основной пункт для быстрого ознакомления:
Свойства Mule Outbound могут быть установлены вами. При пересечении "транспортного барьера" исходящие свойства автоматически превращаются в входящие свойства и больше не существуют как исходящие свойства.