首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ForEach中介器中调用/发送调解员

在ForEach中介器中调用/发送调解员
EN

Stack Overflow用户
提问于 2017-06-09 15:48:00
回答 1查看 1.4K关注 0票数 2

根据文档

ForEach不允许在序列中使用调用、发送和标注中介。

但是,如果将调用/发送/标注中介器放置在序列中,并在其中调用该序列,则可以在ForEach中介器中使用调用/发送/标注中介器,如下面的示例所示:

代码语言:javascript
复制
<!-- myProxy.xml -->
<for-each expression="//foo" >
    <sequence>
      <sequence key="myCallSequence"/>
    </sequence>
</for-each>


<!-- myCallSequence.xml -->
<call>
    <endpoint>
        <address format="soap11" uri="http://my.uri.com"/>
    </endpoint>
</call>

我观察到,这可能会导致一些非常意外的结果,特别是在for与回调混合后的聚合有效载荷方面。

在处理这样一种情况时,我无意中发现了这一点:我必须拆分原始消息,并使用外部服务从分裂的部分验证一些数据,但如果验证成功,仍然需要对原始消息进行更多的处理。

这种配置是否被认为是一种糟糕的做法?如果是,为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-12 07:04:18

只有在需要以迭代的方式(例如,数组)转换有效负载时,才应该使用ForEach中介器。ForEach中介器的实现不是为了支持调用后端。如果您需要实现这个用例,请使用迭代中介器,它允许您调用后端。更多信息请参考https://docs.wso2.com/display/EI611/Iterate+Mediator

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44461945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档