WSO2 ESB如何在代理服务中调用不同类型的端点

时间:2016-05-25 14:48:15

标签: wso2 cxf axis2 esb

我们有四个端点服务。其中三个是使用axis2框架开发的SOAP Web服务。一种是使用CXF框架开发的REST服务。我想从REST Web服务获取一个值,我想将此值传递给代理服务中的axis2 SOAP服务。我怎样才能做到这一点。

谢谢

1 个答案:

答案 0 :(得分:0)

您可以通过wso2 ESB中的服务链来实现此要求(请参阅文档[1],[2]以获取有关服务链的更多信息)。 您可以先调用您的REST服务,并在发送中介中指定“接收”序列,如下所示(参见[3])。

<inSequence>
   .............

   <send receive="soapserviceSeq">
        <endpoint key="restEpr"/>
   </send>
</inSequence>

<sequence name="soapserviceSeq">
   ........................
   <send receive="restserviceSeq">
        <endpoint key="soapEpr"/>
   </send>
</sequence>

<sequence name="restserviceSeq">
    <log level="full"/>
    <send/>
</sequence>

然后REST服务的响应将返回到“接收”序列(soapserviceSeq)。在“soapserviceSeq”序列中,您可以 调用soap服务,您还可以在send mediator(restserviceSeq)中配置接收序列。 然后soap服务的响应将返回到接收序列(restserviceSeq)。

[1] - http://wso2.com/library/articles/2011/01/wso2-esb-by-example-service-chaining/ [2] - http://blog.afkham.org/2012/05/wso2-esb-service-chaining.html [3] - https://docs.wso2.com/display/ESB490/Send+Mediator