You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by rr...@apache.org on 2010/05/04 19:18:52 UTC

svn commit: r940968 [1/2] - in /ode/branches/APACHE_ODE_1.X: axis2-war/src/test/java/org/apache/ode/axis2/ axis2-war/src/test/resources/TestSelectors/ bpel-runtime/src/main/java/org/apache/ode/bpel/engine/

Author: rr
Date: Tue May  4 17:18:51 2010
New Revision: 940968

URL: http://svn.apache.org/viewvc?rev=940968&view=rev
Log:
Test + fix for routing with multiple selectors in loop

Added:
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem.svg   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem.wsdl   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/deploy.xml   (with props)
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/testRequest.soap
Modified:
    ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java

Added: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java?rev=940968&view=auto
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java (added)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java Tue May  4 17:18:51 2010
@@ -0,0 +1,50 @@
+/*
+ * 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.
+ */
+
+package org.apache.ode.axis2;
+
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.assertTrue;
+
+/**
+ * Tests that timeouts set in the *.endpoint files are applied.
+ * The test is designed so a fault must be received.
+ *
+ * Actually, the process invokes a 3-sec long operation (see the process request).
+ * The specified timeouts are lesser than 3-sec, so if properly applied, a fault should be trown.
+ * If not applied, the default 120-sec timeouts will be used. 5sec < 120sec, so the request will succeed.
+ *
+ */
+public class SelectorsTest extends Axis2TestBase implements ODEConfigDirAware {
+    @Test(dataProvider="configs")
+    public void testNoP2P() throws Exception {
+        String bundleName = "TestSelectors";
+        if (server.isDeployed(bundleName)) server.undeployProcess(bundleName);
+        server.deployProcess(bundleName);
+        String response = server.sendRequestFile("http://localhost:8888/ode/processes/Project-Reproduce-Isolation-Problem/ReproduceIsolationProblem/Pool2/Pool",
+                bundleName, "testRequest.soap");
+        System.out.println(response);
+        assertTrue(response.contains("_21Response"));
+        if (server.isDeployed(bundleName)) server.undeployProcess(bundleName);
+    }
+
+    public String getODEConfigDir() {
+        return HIB_DERBY_CONF_DIR;
+    }
+}
\ No newline at end of file

Propchange: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/SelectorsTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel?rev=940968&view=auto
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel (added)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel Tue May  4 17:18:51 2010
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<bpel:process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ode="http://www.apache.org/ode/type/extension" xmlns:Pool3="http://example.com/ReproduceIsolationProblem/Pool3" xmlns:this="http://example.com/ReproduceIsolationProblem/Pool2" xmlns:Pool="http://example.com/ReproduceIsolationProblem/Pool" xmlns:diag="http://example.com/ReproduceIsolationProblem" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:bpmn="http://www.intalio.com/bpms" xmlns:atomic="http://ode.apache.org/atomicScope" queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" bpmn:label="Pool2" name="Pool2" bpmn:id="_bR-rAFOnEd-qUNL1xc5jrA" ta
 rgetNamespace="http://example.com/ReproduceIsolationProblem/Pool2">
+  <bpel:import namespace="http://example.com/ReproduceIsolationProblem" location="ReproduceIsolationProblem.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+  <bpel:import namespace="http://example.com/ReproduceIsolationProblem/Pool2" location="ReproduceIsolationProblem-Pool2.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+  <bpel:import namespace="http://example.com/ReproduceIsolationProblem/Pool3" location="ReproduceIsolationProblem-Pool3.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+  <bpel:partnerLinks>
+    <bpel:partnerLink name="pool2AndPoolPlkVar" partnerLinkType="diag:Pool2AndPool" myRole="Pool2_for_Pool"/>
+    <bpel:partnerLink name="pool3AndPool2PlkVar" partnerLinkType="diag:Pool3AndPool2" initializePartnerRole="yes" partnerRole="Pool3_for_Pool2"/>
+  </bpel:partnerLinks>
+  <bpel:variables>
+    <bpel:variable name="this_21RequestMsg" messageType="this:_21Request"/>
+    <bpel:variable name="pool3_31RequestMsg" messageType="Pool3:_31Request"/>
+    <bpel:variable name="pool3_32RequestMsg" messageType="Pool3:_32Request"/>
+    <bpel:variable name="pool3_33RequestMsg" messageType="Pool3:_33Request"/>
+    <bpel:variable name="pool3_32ResponseMsg" messageType="Pool3:_32Response"/>
+    <bpel:variable name="pool3_33ResponseMsg" messageType="Pool3:_33Response"/>
+    <bpel:variable name="this_21ResponseMsg" messageType="this:_21Response"/>
+  </bpel:variables>
+  <bpel:sequence>
+    <bpel:receive partnerLink="pool2AndPoolPlkVar" portType="this:ForPool" operation="_21" variable="this_21RequestMsg" createInstance="yes" bpmn:label="21" name="_21" bpmn:id="_bzzlsFOnEd-qUNL1xc5jrA"></bpel:receive>
+    <bpel:assign name="init-variables-Pool2" bpmn:id="_bzzlsFOnEd-qUNL1xc5jrA">
+      <bpel:copy bpmn:label="$pool3_31RequestMsg">
+        <bpel:from>
+          <bpel:literal>
+<Pool3:_31Request></Pool3:_31Request></bpel:literal>
+        </bpel:from>
+        <bpel:to>$pool3_31RequestMsg.body</bpel:to>
+      </bpel:copy>
+      <bpel:copy bpmn:label="$pool3_32RequestMsg">
+        <bpel:from>
+          <bpel:literal>
+<Pool3:_32Request></Pool3:_32Request></bpel:literal>
+        </bpel:from>
+        <bpel:to>$pool3_32RequestMsg.body</bpel:to>
+      </bpel:copy>
+      <bpel:copy bpmn:label="$pool3_33RequestMsg">
+        <bpel:from>
+          <bpel:literal>
+<Pool3:_33Request></Pool3:_33Request></bpel:literal>
+        </bpel:from>
+        <bpel:to>$pool3_33RequestMsg.body</bpel:to>
+      </bpel:copy>
+      <bpel:copy bpmn:label="$this_21ResponseMsg">
+        <bpel:from>
+          <bpel:literal>
+<this:_21Response></this:_21Response></bpel:literal>
+        </bpel:from>
+        <bpel:to>$this_21ResponseMsg.body</bpel:to>
+      </bpel:copy>
+    </bpel:assign>
+    <bpel:assign bpmn:label="22" name="_22" bpmn:id="_lf1mIFOnEd-qUNL1xc5jrA">
+      <bpel:copy>
+        <bpel:from>$ode:pid</bpel:from>
+        <bpel:to>$pool3_31RequestMsg.body</bpel:to>
+      </bpel:copy>
+    </bpel:assign>
+    <bpel:invoke partnerLink="pool3AndPool2PlkVar" portType="Pool3:ForPool2" operation="_31" inputVariable="pool3_31RequestMsg" bpmn:label="22" name="_22-1" bpmn:id="_lf1mIFOnEd-qUNL1xc5jrA"></bpel:invoke>
+    <bpel:flow bpmn:label="Parallel_Gateway" name="Parallel_Gateway" bpmn:id="_iyPXcFOnEd-qUNL1xc5jrA">
+      <bpel:sequence>
+        <bpel:assign bpmn:label="23" name="_23" bpmn:id="_vhobMFOnEd-qUNL1xc5jrA">
+          <bpel:copy>
+            <bpel:from>$ode:pid</bpel:from>
+            <bpel:to>$pool3_32RequestMsg.body</bpel:to>
+          </bpel:copy>
+        </bpel:assign>
+        <bpel:invoke partnerLink="pool3AndPool2PlkVar" portType="Pool3:ForPool2" operation="_32" inputVariable="pool3_32RequestMsg" outputVariable="pool3_32ResponseMsg" bpmn:label="23" name="_23-1" bpmn:id="_vhobMFOnEd-qUNL1xc5jrA"></bpel:invoke>
+      </bpel:sequence>
+      <bpel:sequence>
+        <bpel:wait bpmn:label="wait 10 sec" name="wait_10_sec" bpmn:id="_wlu8gFOnEd-qUNL1xc5jrA">
+          <bpel:for>"PT1S"</bpel:for>
+        </bpel:wait>
+        <bpel:assign bpmn:label="34" name="_34" bpmn:id="_xAHLYFOnEd-qUNL1xc5jrA">
+          <bpel:copy>
+            <bpel:from>$ode:pid</bpel:from>
+            <bpel:to>$pool3_33RequestMsg.body</bpel:to>
+          </bpel:copy>
+        </bpel:assign>
+        <bpel:invoke partnerLink="pool3AndPool2PlkVar" portType="Pool3:ForPool2" operation="_33" inputVariable="pool3_33RequestMsg" outputVariable="pool3_33ResponseMsg" bpmn:label="34" name="_34-1" bpmn:id="_xAHLYFOnEd-qUNL1xc5jrA"></bpel:invoke>
+      </bpel:sequence>
+    </bpel:flow>
+    <bpel:invoke partnerLink="pool3AndPool2PlkVar" portType="Pool3:ForPool2" operation="_33" inputVariable="pool3_33RequestMsg" outputVariable="pool3_33ResponseMsg" bpmn:label="34" name="_34-1" bpmn:id="_xAHLYFOnEd-qUNL1xc5jrA"></bpel:invoke>
+    <bpel:reply partnerLink="pool2AndPoolPlkVar" portType="this:ForPool" operation="_21" variable="this_21ResponseMsg" bpmn:label="Task" name="Task" bpmn:id="_7W620FRaEd-y87rmjcz7YQ"></bpel:reply>
+  </bpel:sequence>
+</bpel:process>

Propchange: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.bpel
------------------------------------------------------------------------------
    svn:eol-style = native

Added: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl?rev=940968&view=auto
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl (added)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl Tue May  4 17:18:51 2010
@@ -0,0 +1,56 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+  ~ 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.
+  -->
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:this="http://example.com/ReproduceIsolationProblem/Pool2" xmlns:Pool3="http://example.com/ReproduceIsolationProblem/Pool3" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Pool="http://example.com/ReproduceIsolationProblem/Pool" xmlns:diag="http://example.com/ReproduceIsolationProblem" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://example.com/ReproduceIsolationProblem/Pool2">
+    <wsdl:types>
+        <xs:schema elementFormDefault="qualified" targetNamespace="http://example.com/ReproduceIsolationProblem/Pool2">
+            <xs:element name="_21Request" type="xs:string"/>
+            <xs:element name="_21Response" type="xs:string"/>
+        </xs:schema>
+    </wsdl:types>
+    <wsdl:message name="_21Request">
+        <wsdl:part name="body" element="this:_21Request"/>
+    </wsdl:message>
+    <wsdl:message name="_21Response">
+        <wsdl:part name="body" element="this:_21Response"/>
+    </wsdl:message>
+    <wsdl:portType name="ForPool">
+        <wsdl:operation name="_21">
+            <wsdl:input message="this:_21Request" name="_21"/>
+            <wsdl:output message="this:_21Response" name="_21Response"/>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="CanonicBindingForPool" type="this:ForPool">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="_21">
+            <soap:operation style="document" soapAction="http://example.com/ReproduceIsolationProblem/Pool2/ForPool/_21"/>
+            <wsdl:input name="_21">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="_21Response">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="CanonicServiceForPool">
+        <wsdl:port name="canonicPort" binding="this:CanonicBindingForPool">
+            <soap:address location="http://localhost:8080/ode/processes/Project-Reproduce-Isolation-Problem/ReproduceIsolationProblem/Pool2/Pool"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>

Propchange: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool2.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel?rev=940968&view=auto
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel (added)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel Tue May  4 17:18:51 2010
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<bpel:process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ode="http://www.apache.org/ode/type/extension" xmlns:this="http://example.com/ReproduceIsolationProblem/Pool3" xmlns:Pool2="http://example.com/ReproduceIsolationProblem/Pool2" xmlns:diag="http://example.com/ReproduceIsolationProblem" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:bpmn="http://www.intalio.com/bpms" xmlns:atomic="http://ode.apache.org/atomicScope" queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0" bpmn:label="Pool3" name="Pool3" bpmn:id="_jihk4FOnEd-qUNL1xc5jrA" targetNamespace="http://example.com/ReproduceIsolationProblem/Poo
 l3">
+  <bpel:import namespace="http://example.com/ReproduceIsolationProblem" location="ReproduceIsolationProblem.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+  <bpel:import namespace="http://example.com/ReproduceIsolationProblem/Pool3" location="ReproduceIsolationProblem-Pool3.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+  <bpel:partnerLinks>
+    <bpel:partnerLink name="pool3AndPool2PlkVar" partnerLinkType="diag:Pool3AndPool2" myRole="Pool3_for_Pool2"/>
+  </bpel:partnerLinks>
+  <bpel:correlationSets>
+    <bpel:correlationSet name="newCorrelationSet" properties="this:prop"/>
+  </bpel:correlationSets>
+  <bpel:variables>
+    <bpel:variable name="this_31RequestMsg" messageType="this:_31Request"/>
+  </bpel:variables>
+  <bpel:sequence>
+    <bpel:receive partnerLink="pool3AndPool2PlkVar" portType="this:ForPool2" operation="_31" variable="this_31RequestMsg" createInstance="yes" bpmn:label="31" name="_31" bpmn:id="_k1rO0FOnEd-qUNL1xc5jrA">
+      <bpel:correlations>
+        <bpel:correlation set="newCorrelationSet" initiate="join"/>
+      </bpel:correlations>
+    </bpel:receive>
+    <bpel:scope bpmn:label="outer-SubProcess" name="outer-SubProcess" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA">
+      <bpel:forEach bpmn:label="SubProcess" name="SubProcess" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA" parallel="no" counterName="emptyCounter">
+        <bpel:startCounterValue>0</bpel:startCounterValue>
+        <bpel:finalCounterValue>2</bpel:finalCounterValue>
+        <completionCondition>
+          <bpel:branches>2</bpel:branches>
+        </completionCondition>
+        <bpel:scope bpmn:label="SubProcess" name="SubProcess-1" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA">
+          <bpel:variables>
+            <bpel:variable name="this_33RequestMsg" messageType="this:_33Request"/>
+            <bpel:variable name="this_32ResponseMsg" messageType="this:_32Response"/>
+            <bpel:variable name="this_32RequestMsg" messageType="this:_32Request"/>
+            <bpel:variable name="this_33ResponseMsg" messageType="this:_33Response"/>
+          </bpel:variables>
+          <bpel:sequence>
+            <bpel:assign name="init-variables-SubProcess" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA">
+              <bpel:copy bpmn:label="$this_32ResponseMsg">
+                <bpel:from>
+                  <bpel:literal>
+<this:_32Response></this:_32Response></bpel:literal>
+                </bpel:from>
+                <bpel:to>$this_32ResponseMsg.body</bpel:to>
+              </bpel:copy>
+              <bpel:copy bpmn:label="$this_33ResponseMsg">
+                <bpel:from>
+                  <bpel:literal>
+<this:_33Response></this:_33Response></bpel:literal>
+                </bpel:from>
+                <bpel:to>$this_33ResponseMsg.body</bpel:to>
+              </bpel:copy>
+            </bpel:assign>
+            <bpel:pick bpmn:label="Exclusive_Event-Based_Gateway" name="Exclusive_Event-Based_Gateway" bpmn:id="_rFdx4FOnEd-qUNL1xc5jrA">
+              <bpel:onMessage partnerLink="pool3AndPool2PlkVar" portType="this:ForPool2" operation="_32" variable="this_32RequestMsg" bpmn:label="32" name="_32" bpmn:id="_tDPGIFOnEd-qUNL1xc5jrA">
+                <bpel:correlations>
+                  <bpel:correlation set="newCorrelationSet" initiate="join"/>
+                </bpel:correlations>
+                <bpel:sequence>
+                  <bpel:assign name="init-variables-SubProcess" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA">
+                    <bpel:copy bpmn:label="$this_32ResponseMsg">
+                      <bpel:from>
+                        <bpel:literal>
+<this:_32Response></this:_32Response></bpel:literal>
+                      </bpel:from>
+                      <bpel:to>$this_32ResponseMsg.body</bpel:to>
+                    </bpel:copy>
+                    <bpel:copy bpmn:label="$this_33ResponseMsg">
+                      <bpel:from>
+                        <bpel:literal>
+<this:_33Response></this:_33Response></bpel:literal>
+                      </bpel:from>
+                      <bpel:to>$this_33ResponseMsg.body</bpel:to>
+                    </bpel:copy>
+                  </bpel:assign>
+                  <bpel:wait bpmn:label="wait 30 seconds" name="wait_30_seconds" bpmn:id="_0iKV0FOnEd-qUNL1xc5jrA">
+                    <bpel:for>"PT3S"</bpel:for>
+                  </bpel:wait>
+                  <bpel:reply partnerLink="pool3AndPool2PlkVar" portType="this:ForPool2" operation="_32" variable="this_32ResponseMsg" bpmn:label="34" name="_34" bpmn:id="_2OMZ0FOnEd-qUNL1xc5jrA"></bpel:reply>
+                </bpel:sequence>
+              </bpel:onMessage>
+              <bpel:onMessage partnerLink="pool3AndPool2PlkVar" portType="this:ForPool2" operation="_33" variable="this_33RequestMsg" bpmn:label="33" name="_33" bpmn:id="_uhaUUFOnEd-qUNL1xc5jrA">
+                <bpel:correlations>
+                  <bpel:correlation set="newCorrelationSet" initiate="join"/>
+                </bpel:correlations>
+                <bpel:sequence>
+                  <bpel:assign name="init-variables-SubProcess" bpmn:id="_-IzjIFOrEd-qUNL1xc5jrA">
+                    <bpel:copy bpmn:label="$this_32ResponseMsg">
+                      <bpel:from>
+                        <bpel:literal>
+<this:_32Response></this:_32Response></bpel:literal>
+                      </bpel:from>
+                      <bpel:to>$this_32ResponseMsg.body</bpel:to>
+                    </bpel:copy>
+                    <bpel:copy bpmn:label="$this_33ResponseMsg">
+                      <bpel:from>
+                        <bpel:literal>
+<this:_33Response></this:_33Response></bpel:literal>
+                      </bpel:from>
+                      <bpel:to>$this_33ResponseMsg.body</bpel:to>
+                    </bpel:copy>
+                  </bpel:assign>
+                  <bpel:reply partnerLink="pool3AndPool2PlkVar" portType="this:ForPool2" operation="_33" variable="this_33ResponseMsg" bpmn:label="33 reply" name="_33_reply" bpmn:id="_xW4AYFO5Ed-_Q-SZnn1pGA"></bpel:reply>
+                </bpel:sequence>
+              </bpel:onMessage>
+            </bpel:pick>
+          </bpel:sequence>
+        </bpel:scope>
+      </bpel:forEach>
+    </bpel:scope>
+  </bpel:sequence>
+</bpel:process>

Propchange: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.bpel
------------------------------------------------------------------------------
    svn:eol-style = native

Added: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl?rev=940968&view=auto
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl (added)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl Tue May  4 17:18:51 2010
@@ -0,0 +1,100 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+  ~ 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.
+  -->
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:this="http://example.com/ReproduceIsolationProblem/Pool3" xmlns:Pool2="http://example.com/ReproduceIsolationProblem/Pool2" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:diag="http://example.com/ReproduceIsolationProblem" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://example.com/ReproduceIsolationProblem/Pool3">
+    <wsdl:types>
+        <xs:schema elementFormDefault="qualified" targetNamespace="http://example.com/ReproduceIsolationProblem/Pool3">
+            <xs:element name="_31Request" type="xs:string"/>
+            <xs:element name="_32Request" type="xs:string"/>
+            <xs:element name="_32Response" type="xs:string"/>
+            <xs:element name="_33Request" type="xs:string"/>
+            <xs:element name="_33Response" type="xs:string"/>
+        </xs:schema>
+    </wsdl:types>
+    <wsdl:message name="_31Request">
+        <wsdl:part name="body" element="this:_31Request"/>
+    </wsdl:message>
+    <wsdl:message name="_32Request">
+        <wsdl:part name="body" element="this:_32Request"/>
+    </wsdl:message>
+    <wsdl:message name="_32Response">
+        <wsdl:part name="body" element="this:_32Response"/>
+    </wsdl:message>
+    <wsdl:message name="_33Request">
+        <wsdl:part name="body" element="this:_33Request"/>
+    </wsdl:message>
+    <wsdl:message name="_33Response">
+        <wsdl:part name="body" element="this:_33Response"/>
+    </wsdl:message>
+    <wsdl:portType name="ForPool2">
+        <wsdl:operation name="_31">
+            <wsdl:input message="this:_31Request" name="_31"/>
+        </wsdl:operation>
+        <wsdl:operation name="_32">
+            <wsdl:input message="this:_32Request" name="_32"/>
+            <wsdl:output message="this:_32Response" name="_32Response"/>
+        </wsdl:operation>
+        <wsdl:operation name="_33">
+            <wsdl:input message="this:_33Request" name="_33"/>
+            <wsdl:output message="this:_33Response" name="_33Response"/>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="CanonicBindingForPool2" type="this:ForPool2">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="_31">
+            <soap:operation style="document" soapAction="http://example.com/ReproduceIsolationProblem/Pool3/ForPool2/_31"/>
+            <wsdl:input name="_31">
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+        <wsdl:operation name="_32">
+            <soap:operation style="document" soapAction="http://example.com/ReproduceIsolationProblem/Pool3/ForPool2/_32"/>
+            <wsdl:input name="_32">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="_32Response">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        <wsdl:operation name="_33">
+            <soap:operation style="document" soapAction="http://example.com/ReproduceIsolationProblem/Pool3/ForPool2/_33"/>
+            <wsdl:input name="_33">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="_33Response">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="CanonicServiceForPool2">
+        <wsdl:port name="canonicPort" binding="this:CanonicBindingForPool2">
+            <soap:address location="http://localhost:8080/ode/processes/Project-Reproduce-Isolation-Problem/ReproduceIsolationProblem/Pool3/Pool2"/>
+        </wsdl:port>
+    </wsdl:service>
+    <vprop:property name="prop" type="xs:string"/>
+    <vprop:propertyAlias propertyName="this:prop" messageType="this:_31Request" part="body">
+        <vprop:query>text()</vprop:query>
+    </vprop:propertyAlias>
+    <vprop:propertyAlias propertyName="this:prop" messageType="this:_33Request" part="body">
+        <vprop:query>text()</vprop:query>
+    </vprop:propertyAlias>
+    <vprop:propertyAlias propertyName="this:prop" messageType="this:_32Request" part="body">
+        <vprop:query>text()</vprop:query>
+    </vprop:propertyAlias>
+</wsdl:definitions>

Propchange: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/resources/TestSelectors/ReproduceIsolationProblem-Pool3.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native