2

是否可以从代理服务的发送中介内将消息发送到多个端点?

WSO2 ESB Send Mediator 文档中的此链接在语法一章下指出,如果要将消息发送到一个或多个端点,则使用以下内容:

<send>
    (endpointref | endpoint)+
</send>

其中 endpointref 令牌指的是以下内容:

<endpoint key="name"/>

我尝试在发送下包含两个端点,但第二个端点在保存代理服务时会自动删除(在 Developer Studio 中或直接在 ESB Stratos 界面中)。我确实去了 Send Mediator 的 Synapse页面,看看他们是否说了什么特别的东西,他们的格式显示:

(endpointref | endpoint)?

现在假设这些字符代表正则表达式,?代表 0 次或 1 次,+ 表示 1 次或多次。WSO2 是否在 Synapse Send Mediator 之上实现了这个额外的“一个或多个端点”功能,或者它只是文档页面上的一个错误。如果他们这样做了,使其工作的确切语法是什么?

谢谢!

4

3 回答 3

2

实际上,您可以使用Recipienlist 端点将单个消息发送到多个端点。在将收件人列表存储为 localentry 并将其提供为端点密钥之后。

于 2013-03-13T10:03:34.480 回答
2

你可以这样做:

<send>
    <endpoint key="jmsMBendpoint1"/>
    </send>
                                     <send>
                                        <endpoint key="jmsMBendpoint2"/>
                                     </send>

.我已经使用了这种方法并且正在为我工​​作。

于 2013-04-24T05:42:10.197 回答
0

您可以使用克隆调解器发送到多个端点,并指定相应的端点,如下面的配置所示。

<sequence xmlns="http://ws.apache.org/ns/synapse" name="send_to_all">
   <clone sequential="false">
      <target endpoint="endpoint1"/>
      <target endpoint="endpoint2"/>
      <target endpoint="endpoint3"/>     
   </clone>
   <drop/>
</sequence>
于 2013-09-14T12:31:25.637 回答