2015-07-24 2 views
0

У меня есть следующий поток медиации в wso2 ESB для клиента.wso2 ESB вызов Посредник последовательности в цепочке

Sequence 1 
    Call data service 
    Check data availability 
     if available 
      Get data using data service 
      Manipulate data using payload factory 
      Iterate based on node 
       send data to client 
       get response 
       create payload based on response to data service 
       update database 
      end iterate 
     end if 
    end 

Как и в последовательности 1, у меня есть последовательность 2, последовательность 3 .. последовательность n, вызывающая разные службы данных и разные конечные точки клиента. Последовательность 1 работает правильно, извлекает данные и обновляет базу данных. Когда поток переходит к последовательности 2, во время регистрации я вижу содержимое/сообщения из последовательности 1, найденной в последовательности 2, которая вызывает последовательность 2, выполняемую ошибочно. Мой вопрос в том, есть ли способ как java flush(), close() переходить от последовательности 1 к последовательности 2 в ESB wso2.

Заранее благодарен.

ответ

1

Решение 1. Вы можете использовать clone mediator для создания нескольких экземпляров содержимого вашего сообщения.

Решение 2. Еще одна возможность - сохранить исходное содержимое (до начала последовательности 1) в a и обновить исходное содержимое до начала последовательности2. Для этого используйте enrich mediator.

Поскольку посредник-клон не рекомендуется (создает новые потоки!), Я бы пошел на второе решение с помощью обогатительного посредника.

<!-- store the initial message content --> 
<enrich> 
    <source type="body" clone="true"/> 
    <target type="property" property="BodyBackup"/> 
</enrich> 

<sequence key="sequence1"/> 

<!-- restore the message content --> 
<enrich> 
    <source type="property" property="BodyBackup"/> 
    <target type="body"/> 
</enrich> 

<sequence key="sequence2"/> 
+0

Я считаю, что решение 2 является лучшим в моем случае. Спасибо за ответ. :) – Yasothar

Смежные вопросы