WSO2 ESB发送到多个端点

时间:2013-03-11 20:55:57

标签: wso2 wso2esb

是否可以在代理服务中的发送中介内向多个端点发送邮件?

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

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

其中endpointref令牌引用以下内容:

<endpoint key="name"/>

我尝试在send下包含两个端点,但第二个端点在保存代理服务时自动删除(在Developer Studio内部或直接在ESB Stratos界面中)。我确实去了Synapse page寻找发送调解员,看看他们是否说了什么特别的,他们的格式说:

(endpointref | endpoint)?

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

谢谢!

3 个答案:

答案 0 :(得分:2)

实际上,您可以使用Recipienlist endpoint向多个端点发送单个邮件。 将收件人列表存储taht定义为localentry并将其作为端点密钥提供。

答案 1 :(得分:2)

您可以这样做:

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

。我使用过这种方法并且正在为我工​​作。

答案 2 :(得分: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>