【问题标题】:dynamic payload processing in wso2 esbwso2 esb 中的动态负载处理
【发布时间】:2013-06-25 14:11:59
【问题描述】:

我有进入 ESB 代理的动态有效负载,在解析每个单独的元素(也可以嵌套)后,需要将其发送到 BAM 服务器。此动态有效负载包含重复的复杂类型元素。如何将它作为 ESB 序列的一部分进行遍历,并为每个重复的元素动态地赋予唯一名称并将其发送到 BAM 服务器?例如Employee XML 元素是动态的,可以重复多次。

<Request> <appName></appName> <Employee> <name></name> <age></age> </Employee> <Employee> <name></name> <age></age> <Qualifications> <degree></degree> <year></year> <college></college> </Qualifications> </Employee> <Employee> <name></name> <age></age> </Employee> </Request>

【问题讨论】:

    标签: dynamic wso2 message esb


    【解决方案1】:

    据我了解,您需要遍历元素并将它们一一发送到 BAM。 您可以使用 Iterator 调解器来一一获取元素。 [1] 然后你需要使用 payloadFactory 中介来添加一个唯一的 id。为此,您可以在内部添加一个新元素。您可以通过在同一个 Doc 站点[1] 上搜索来找到这方面的示例。 你也可以参考这篇博客[2]来了解payloadFactory。

    [1]http://docs.wso2.org/wiki/display/ESB460/Iterate+Mediator

    [2]http://madhukaudantha.blogspot.com/2013/05/wso2-esb-payload-mediator-tutorial.html

    【讨论】:

    • 感谢您的回复。因此,如果我们一一迭代并将其发送到 BAM,它不会覆盖 Cassandra 流下的值。说第一次迭代它发送 //Employee/name 并且对于第二次迭代它也找到了具有不同值的相同元素。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-17
    相关资源
    最近更新 更多