⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testinstantiatingpick.bpel

📁 bpel执行引擎用来执行bpel业务流程
💻 BPEL
字号:
<!--
	~ Licensed to the Apache Software Foundation (ASF) under one
	~ or more contributor license agreements.  See the NOTICE file
	~ distributed with this work for additional information
	~ regarding copyright ownership.  The ASF licenses this file
	~ to you under the Apache License, Version 2.0 (the
	~ "License"); you may not use this file except in compliance
	~ with the License.  You may obtain a copy of the License at
	~
	~    http://www.apache.org/licenses/LICENSE-2.0
	~
	~ Unless required by applicable law or agreed to in writing,
	~ software distributed under the License is distributed on an
	~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
	~ KIND, either express or implied.  See the License for the
	~ specific language governing permissions and limitations
	~ under the License.
-->

<process xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://docs.oasis-open.org/wsbpel/2.0/process/executable ../../../../../../../bpel-schemas/src/main/resources/wsbpel_executable.xsd"
         xmlns:tns="http://ode/bpel/unit-test/TestInstantiatingPick"
         xmlns:wns="http://ode/bpel/unit-test/TestInstantiatingPick.wsdl"
         xmlns:prb="http://ode/bpel/unit-test/ProbeService.wsdl"
         xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
         name="TestInstantiatingPick"
         targetNamespace="http://ode/bpel/unit-test/TestInstantiatingPick"
         queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
         expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
         suppressJoinFailure="yes">

    <!-- Unit test process instantiating pick -->
    <import location="TestInstantiatingPick.wsdl"
            namespace="http://ode/bpel/unit-test/TestInstantiatingPick.wsdl"
            importType="http://schemas.xmlsoap.org/wsdl/" />
    <import location="../ProbeService/probeService.wsdl"
            namespace="http://ode/bpel/unit-test/ProbeService.wsdl"
            importType="http://schemas.xmlsoap.org/wsdl/"/>


    <partnerLinks>
        <partnerLink name="request1" partnerLinkType="wns:testInstPick1Request" myRole="testInstPick1Service"/>
        <partnerLink name="request2" partnerLinkType="wns:testInstPick2Request" myRole="testInstPick2Service"/>
        <partnerLink name="probe" partnerLinkType="wns:probeRequest" partnerRole="probeService" initializePartnerRole="yes"/>
    </partnerLinks>

    <variables>
        <variable name="request" messageType="wns:requestMessage"/>
        <variable name="probeInput" messageType="prb:probeMessage"/>
        <variable name="reply" messageType="wns:replyMessage"/>
    </variables>


    <pick name="testPick" createInstance="yes">
        <onMessage partnerLink="request1"
                   portType="wns:testInstPick1PT" operation="request" variable="request">
            <sequence>
                <assign name="assign1">
                    <copy>
                        <from variable="request" property="wns:testProbeID"/>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                    <copy>
                        <from variable="request" part="requestText"/>
                        <to variable="probeInput" part="probeData"/>
                    </copy>
                </assign>

                <assign>
                    <copy>
                        <from>
                            <literal><![CDATA[pick branch one invoked]]></literal>
                        </from>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                </assign>

                <invoke name="probe" partnerLink="probe"
                        portType="prb:probeMessagePT"
                        operation="probe"
                        inputVariable="probeInput"
                        outputVariable="probeInput">
                </invoke>

                <assign>
                    <copy>
                        <from>
                            <literal><![CDATA[process complete]]></literal>
                        </from>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                </assign>

                <invoke name="probe" partnerLink="probe"
                        portType="prb:probeMessagePT"
                        operation="probe"
                        inputVariable="probeInput"
                        outputVariable="probeInput">
                </invoke>

                <assign name="assign2">
                    <copy>
                        <from variable="probeInput" part="probeName"/>
                        <to variable="reply" part="replyID"/>
                    </copy>
                    <copy>
                        <from variable="probeInput" part="probeData"/>
                        <to variable="reply" part="replyText"/>
                    </copy>
                </assign>

                <reply name="reply" partnerLink="request1" portType="wns:testInstPick1PT"
                       operation="request" variable="reply">
                </reply>

            </sequence>
        </onMessage>
        <onMessage partnerLink="request2"
                   portType="wns:testInstPick2PT" operation="request" variable="request">
            <sequence>
                <assign name="assign1">
                    <copy>
                        <from variable="request" property="wns:testProbeID"/>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                    <copy>
                        <from variable="request" part="requestText"/>
                        <to variable="probeInput" part="probeData"/>
                    </copy>
                </assign>

                <assign>
                    <copy>
                        <from>
                            <literal><![CDATA[pick branch two invoked]]></literal>
                        </from>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                </assign>

                <invoke name="probe" partnerLink="probe"
                        portType="prb:probeMessagePT"
                        operation="probe"
                        inputVariable="probeInput"
                        outputVariable="probeInput">
                </invoke>

                <assign>
                    <copy>
                        <from>
                            <literal><![CDATA[process complete]]></literal>
                        </from>
                        <to variable="probeInput" part="probeName"/>
                    </copy>
                </assign>

                <invoke name="probe" partnerLink="probe"
                        portType="prb:probeMessagePT"
                        operation="probe"
                        inputVariable="probeInput"
                        outputVariable="probeInput">
                </invoke>

                <assign name="assign2">
                    <copy>
                        <from variable="probeInput" part="probeName"/>
                        <to variable="reply" part="replyID"/>
                    </copy>
                    <copy>
                        <from variable="probeInput" part="probeData"/>
                        <to variable="reply" part="replyText"/>
                    </copy>
                </assign>

                <reply name="reply" partnerLink="request2" portType="wns:testInstPick2PT"
                       operation="request" variable="reply">
                </reply>

            </sequence>
        </onMessage>
    </pick>

</process>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -