wso2 ESB调用链中的序列中介

时间:2015-07-24 09:43:01

标签: wso2esb wso2dss

我在客户端的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时,在记录时,我可以看到序列2中找到的序列1的内容/消息,这导致序列2错误地执行。我的问题是,是否有一种方法可以让java flush(), close()从wso2 ESB中的序列1移动到序列2。

提前致谢。

1 个答案:

答案 0 :(得分:1)

解决方案1:您可以使用clone mediator创建邮件内容的多个实例。

解决方案2:另一种可能性是将初始内容(在sequence1启动之前)存储在a中,并在sequence2启动之前再次更新初始内容。请使用enrich mediator

由于不推荐使用克隆介体(创建新线程!),我会选择使用rich mediator 的第二个解决方案。

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="true"
    android:fillEnabled="true">

    <rotate
        android:duration="500"
        android:fromDegrees="0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toDegrees="180" />
</set>