从WSO2 ESB调用代理服务到BPEL工作流程过程

时间:2016-03-15 10:44:23

标签: soap wso2esb bpel wso2bps

如何从WSO2 ESB调用Soap代理服务到BPEL工作流程。任何帮助都可以非常感激。

1 个答案:

答案 0 :(得分:0)

请按照以下步骤操作。

  1. 在WSO2 BPS服务器上部署BPEL流程。 (登录BPS管理控制台并转到进程 - >添加然后选择BPEL存档(zip)文件并上传。如果您的BPEL流程有外部Web服务调用,您可以托管那些Web服务WSO2 App Server或axis2Server )

  2. 使用有效负载工厂介体创建代理服务,如下所示。这里有效负载工厂mediaor用于将传入请求的有效负载转换为允许BPEL流程调用请求的适当格式。

  3. <proxy xmlns="http://ws.apache.org/ns/synapse"
           name="bpel_factory"
           transports="https,http"
           statistics="disable"
           trace="disable"
           startOnLoad="true">
       <target>
          <inSequence>
             <payloadFactory media-type="xml">
                <format>
                   <p:MultiOperatorServiceRequest xmlns:p="http://wso2.org/bps/operator"><!--Exactly 1 occurrence--><x xmlns="http://wso2.org/bps/operator">$1</x>
                      <!--Exactly 1 occurrence--><y xmlns="http://wso2.org/bps/operator">$2</y>
                   </p:MultiOperatorServiceRequest>
                </format>
                <args>
                   <arg xmlns:m="http://wso2.org/bps/operator"
                        evaluator="xml"
                        expression="//m:MultiOperatorServiceRequest/x"/>
                   <arg xmlns:m="http://wso2.org/bps/operator"
                        evaluator="xml"
                        expression="//m:MultiOperatorServiceRequest/y"/>
                </args>
             </payloadFactory>
             <send>
                <endpoint>
                   <address uri="http://10.100.7.75:9763/services/MultiOperatorService.MultiOperatorServicehttpMultiOperatorServiceBindingEndpoint/"/>
                </endpoint>
             </send>
          </inSequence>
          <outSequence>
             <log level="full"/>
             <respond/>
          </outSequence>
       </target>
       <description/>
    </proxy>
    
    1. 接下来,您可以通过POSTMAN将带有效负载的POST请求发送到代理服务并进行测试。
    2. 有关详细信息,请参阅http://wokis.blogspot.com/2016/05/invoke-bpel-workflow-from-wso2-esb.html