WSO2 EI/ESB: For loop implementation

佐手、 提交于 2020-05-30 20:51:49

问题


I want to implement a simple "for loop" in WSO2 Integration Studio.

For example:

I am implementing a bus-route API. Every bus has 10 different stops. I want to fetch the 10 stops from the back-end service. A normal for-loop for this would be:

for(i=0;i<10;i++)
{
    //back-end call
    <call>
       <endpoint>
          <http method="get" uri-template="https://backend.com/city+i"/>
       </endpoint>
    </call>
}

NOTE: In the above for loop, the back-end call has path parameter like city which should be iterated as city1, city2, city3,..... city9.

How do I implement this in WSO2 EI/ESB Integration Studio?


回答1:


One simple way would be to define a sample payload with the numbers inside an array and iterate through it. (This would work if the number of the iterations are predefined) For eg: [{"value" : 1},{"value" :2},{"value" : 3}, ... ]

Or else you can write a custom class mediator and implement your logic.

Also there is a fun way to implement a while loop with the help of database. http://bsenduran.blogspot.com/2017/08/while-loop-in-wso2-esb.html?m=1



来源:https://stackoverflow.com/questions/61793131/wso2-ei-esb-for-loop-implementation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!