В настоящее время я пытаюсь вычислить полезную нагрузку в агрегатном элементе из шаблона последовательности. Моя проблема заключается в том, что полезная нагрузка, возвращаемая этой последовательностью, является той, которая генерируется агрегатом, а не сборкой с фабрикой полезных данных. Вот примерОбмен полезной нагрузкой WSO2 в совокупности
<clone id="TEST" sequential="true">
<target>
<sequence>
<call-template key="do-soemthing"/>
</sequence>
</target>
<target>
<sequence>
<call-template key="do-something-else"/>
</sequence>
</target>
</clone>
<aggregate id="TEST">
<completeCondition>
<messageCount max="-1" min="-1"/>
</completeCondition>
<onComplete expression="//status">
<filter xpath="count(//status[text() = 'NOK']) = 0">
<then>
<payloadFactory media-type="xml">
<format>
<myPayload>
<status>OK</status>
<action>foo</action>
</myPayload>
</format>
<args/>
</payloadFactory>
</then>
<else>
<payloadFactory media-type="xml">
<format>
<myPayload>
<status>NOK</status>
<action>bar</action>
</myPayload>
</format>
<args/>
</payloadFactory>
</else>
</filter>
</onComplete>
</aggregate>
Что бы ожидать при вызове этой последовательности, чтобы получить обратно элемент, но вместо этого я получаю (агрегировать). Как я могу это решить?
Благодаря
Спасибо за ваш ответ, если я установлю continueParent = "true", я не смогу получить результат последовательности клонов в конце клона, я просто оставлю полезную нагрузку перед другим вызовом. Я попытаюсь объединить внутри каждого элемента клона, но это не звучит ни логично, ни естественно для меня, насколько я всегда понимал, что агрегация должна выполняться только один раз, когда все последовательности выполняются. – Nicolas
неправильный агрегирующий агент должен быть вызван столько раз, сколько есть reponses, это причина messageCount в completeCondition: вы можете установить -1 с помощью посредника клона, потому что ESB знает, что были установлены 2 цели. Когда completeCondition истинна («последнее» время, которое вызвал посредник aggreage), выполняется «onComplete» часть –
Я выполнил несколько тестов, и я никогда не получаю полезную нагрузку из совокупности, я просто извлекаю оригинальная полезная нагрузка. Может быть, причина в том, что я не использую это в прокси, но в регулярной последовательности? – Nicolas