0

我有这样的服务。客户端请求是多条记录。例如,客户端请求是:

parameter1, parameter2, parameter3, parameter4, parameter5
parameter1, parameter2, parameter3, parameter4, parameter5
parameter1, parameter2, parameter3, parameter4, parameter5
parameter1, parameter2, parameter3, parameter4, parameter5

我需要将这些记录一一发送到实际服务。如何在 WSO2 中做到这一点?

4

3 回答 3

2

在这种情况下,您可以将标注调解器与迭代调解器一起使用。在迭代中,您可以迭代每组参数,在迭代目标中,您可以使用每组参数对服务进行调用(使用调用调解器)。

您需要在迭代中介器中将顺序参数设置为true,以便一个接一个地调用它。Call Out 调解器调用是阻塞调用。所以它会阻塞直到响应到来。见标注调解员

如果您能提供确切的消息格式,我将能够提供更多详细信息。示例消息会很好。

于 2012-05-23T08:11:52.220 回答
1

我假设您的数据格式如下

<data>
<record>param1</record>
<record>param2</record>
<record>param3</record>
<record>param4</record>
</data>

如果是这种情况,并且您的要求是一个一个地遍历元素一个一个地发送这些数据。您可以使用 WSO2 ESB 的 iterate mediator 并遍历参数并一一发送。您必须在迭代调解器中将参数“sequential”设置为 true 以使其成为单线程。

http://wso2.org/project/esb/java/4.0.3/docs/samples/advanced_mediation_samples.html#Splitter

干杯,慈善机构

于 2012-05-22T05:42:10.077 回答
0

如果您详细说明您的具体要求,回答会更容易。因此,我假设您的要求是以顺序方式将来自客户端的一些值发送到服务。为此,您可以简单地提取请求中的任何参数(作为使用属性中介的属性),然后使用每个参数顺序调用服务。(发送带有接收序列的中介)

于 2012-05-20T18:06:29.130 回答