You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2007/08/04 01:19:42 UTC

svn commit: r562612 - in /ode/trunk: axis2/src/main/java/org/apache/ode/axis2/hooks/ axis2/src/main/java/org/apache/ode/axis2/service/ bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/ bpel-epr/src/main/java/org/apache/ode/il/ bpel-runtime/src/...

Author: mriou
Date: Fri Aug  3 16:19:40 2007
New Revision: 562612

URL: http://svn.apache.org/viewvc?view=rev&rev=562612
Log:
A new hardly earned test case for onAlarms. Fix in the mock scheduler to fire scheduled events anytime and not only after completion.

Added:
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.bpel
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.deploy
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.wsdl
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer.wsdl
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/deploy.xml
    ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/message.xsd
Modified:
    ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisService.java
    ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
    ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
    ode/trunk/bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/WSDLRegistryTest.java
    ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java
    ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
    ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
    ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java
    ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
    ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BasicActivities20Test.java

Modified: ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisService.java
URL: http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisService.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisService.java (original)
+++ ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisService.java Fri Aug  3 16:19:40 2007
@@ -21,8 +21,6 @@
 
 import java.io.InputStream;
 import java.net.URI;
-import java.net.URL;
-import java.net.URLEncoder;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;

Modified: ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
URL: http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java (original)
+++ ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java Fri Aug  3 16:19:40 2007
@@ -56,8 +56,6 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.net.URI;
-import java.net.URL;
 import java.util.Collection;
 import java.util.List;
 import java.util.zip.ZipEntry;

Modified: ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
URL: http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java (original)
+++ ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java Fri Aug  3 16:19:40 2007
@@ -24,8 +24,6 @@
 import java.lang.reflect.Array;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
-import java.net.URI;
-import java.net.URL;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;

Modified: ode/trunk/bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/WSDLRegistryTest.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/WSDLRegistryTest.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/WSDLRegistryTest.java (original)
+++ ode/trunk/bpel-compiler/src/test/java/org/apache/ode/bpel/compiler/WSDLRegistryTest.java Fri Aug  3 16:19:40 2007
@@ -19,7 +19,6 @@
 package org.apache.ode.bpel.compiler;
 
 import java.io.File;
-import java.net.URI;
 import java.net.URL;
 
 import javax.wsdl.xml.WSDLReader;

Modified: ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java (original)
+++ ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/MockScheduler.java Fri Aug  3 16:19:40 2007
@@ -28,10 +28,7 @@
 import javax.transaction.Synchronization;
 import javax.transaction.SystemException;
 import javax.transaction.TransactionManager;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -48,6 +45,7 @@
     private ExecutorService _executorSvc = Executors.newCachedThreadPool();
     private ThreadLocal<Boolean> _transacted = new ThreadLocal<Boolean>();
     private TransactionManager _txm;
+    private Timer _timer = new Timer(false);
 
     public MockScheduler() {
         _transacted.set(false);
@@ -65,15 +63,27 @@
         }
     };
 
-    public String schedulePersistedJob(Map<String, Object> detail, Date date) throws ContextException {
+    public String schedulePersistedJob(final Map<String, Object> detail, Date date) throws ContextException {
         if (date != null) {
-            try {
-                while(new Date().before(date)) { Thread.sleep(100); }
-            } catch (InterruptedException e) {
-                e.printStackTrace();
-            }
+            _timer.schedule(new TimerTask() {
+                public void run() {
+                    try {
+                        execIsolatedTransaction(new Callable() {
+                            public Object call() throws Exception {
+                                JobInfo ji = new JobInfo("volatileJob", detail, 0);
+                                doExecute(ji);
+                                return null;
+                            }
+                        });
+                    } catch (Exception e) {
+                        throw new ContextException("Failure when scheduling a new volatile job.", e);
+                    }
+                }
+            }, date);
+            return null;
+        } else {
+            return scheduleVolatileJob(true, detail);
         }
-        return scheduleVolatileJob(true, detail);
     }
 
     public String scheduleVolatileJob(final boolean transacted, final Map<String, Object> detail) throws ContextException {

Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java Fri Aug  3 16:19:40 2007
@@ -40,7 +40,6 @@
 import org.apache.ode.bpel.explang.ConfigurationException;
 import org.apache.ode.bpel.explang.EvaluationException;
 import org.apache.ode.bpel.iapi.BpelEngineException;
-import org.apache.ode.bpel.iapi.BpelEventListener;
 import org.apache.ode.bpel.iapi.Endpoint;
 import org.apache.ode.bpel.iapi.EndpointReference;
 import org.apache.ode.bpel.iapi.MessageExchange;

Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java Fri Aug  3 16:19:40 2007
@@ -39,6 +39,8 @@
 import java.util.Calendar;
 import java.util.HashSet;
 import java.util.Set;
+import java.util.Date;
+
 import org.w3c.dom.Element;
 
 /**

Modified: ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java (original)
+++ ode/trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java Fri Aug  3 16:19:40 2007
@@ -18,8 +18,6 @@
  */
 package org.apache.ode.test;
 
-import junit.framework.TestCase;
-
 import org.apache.ode.bpel.common.evt.DebugBpelEventListener;
 import org.apache.ode.bpel.dao.BpelDAOConnectionFactory;
 import org.apache.ode.bpel.engine.BpelServerImpl;
@@ -34,7 +32,6 @@
 import org.apache.ode.bpel.memdao.BpelDAOConnectionFactoryImpl;
 import org.apache.ode.dao.jpa.BPELDAOConnectionFactoryImpl;
 import org.apache.ode.il.MockScheduler;
-import org.apache.ode.il.config.OdeConfigProperties;
 import org.apache.ode.store.ProcessConfImpl;
 import org.apache.ode.store.ProcessStoreImpl;
 import org.apache.ode.utils.DOMUtils;

Modified: ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java (original)
+++ ode/trunk/bpel-test/src/main/java/org/apache/ode/test/MessageExchangeContextImpl.java Fri Aug  3 16:19:40 2007
@@ -86,23 +86,11 @@
 
 	public void onAsyncReply(MyRoleMessageExchange myRoleMex)
 			throws BpelEngineException {
-		
-
 		Status mStat = myRoleMex.getStatus();
-		
-	
-		if ( mStat == Status.RESPONSE ) {
-			
+        if ( mStat == Status.RESPONSE ) {
 			currentResponse = myRoleMex.getResponse();
-			
-			
-			//String resp = DOMUtils.domToString(getCurrentResponse().getMessage());
-			//System.out.println(resp);
-
 		}
-		
 		myRoleMex.complete();
-		
 	}
 	
 	private void invokeProbeService(PartnerRoleMessageExchange prmx) {

Modified: ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BasicActivities20Test.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BasicActivities20Test.java?view=diff&rev=562612&r1=562611&r2=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BasicActivities20Test.java (original)
+++ ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BasicActivities20Test.java Fri Aug  3 16:19:40 2007
@@ -80,11 +80,27 @@
         Invocation inv = addInvoke("WaitUntil", new QName("http://ode/bpel/unit-test.wsdl", "testService"), "testOperation", 
             "<message><TestPart/><Time>"+isountil+"</Time></message>",
             null);
-        inv.minimumWaitMs=5*1000L;
+        inv.minimumWaitMs=4*1000L;
         inv.maximumWaitMs=7*1000L;
         inv.expectedStatus = MessageExchange.Status.ASYNC;
         inv.expectedFinalStatus = MessageExchange.Status.RESPONSE;
         
+        go();
+    }
+
+    /**
+     * Tests the wait "for" syntax.
+     * @throws Throwable
+     */
+	@Test public void testOnAlarm() throws Throwable {
+        deploy("/bpel/2.0/TestAlarm");
+        Invocation inv = addInvoke("Wait1#1", new QName("http://ode.apache.org/example", "CanonicServiceForClient"), "receive",
+            "<message><body><start xmlns=\"http://ode.apache.org/example\">start</start></body></message>",
+            null);
+        inv.maximumWaitMs=20*1000L;
+        inv.expectedStatus = MessageExchange.Status.ASYNC;
+        inv.expectedFinalStatus = MessageExchange.Status.RESPONSE;
+
         go();
     }
 

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.bpel
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.bpel?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.bpel (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.bpel Fri Aug  3 16:19:40 2007
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<bpel:process xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+              xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+              xmlns:xs="http://www.w3.org/2001/XMLSchema"
+              xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+              xmlns:Client="http://example.com/HandleTimer/Client"
+              xmlns:this="http://ode.apache.org/example"
+              queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
+              expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
+              name="Timer" targetNamespace="http://ode.apache.org/example">
+    <bpel:import namespace="http://example.com/HandleTimer" location="HandleTimer.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+    <bpel:import namespace="http://example.com/HandleTimer/Timer" location="HandleTimer-Timer.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
+    <bpel:partnerLinks>
+        <bpel:partnerLink name="timerAndClientPlkVar" partnerLinkType="this:TimerAndClient" myRole="Timer_for_Client"/>
+    </bpel:partnerLinks>
+    <bpel:variables>
+        <bpel:variable name="msg" messageType="this:receiveRequest"/>
+        <bpel:variable name="msg1" messageType="this:receiveResponse"/>
+    </bpel:variables>
+    <bpel:sequence>
+        <bpel:receive partnerLink="timerAndClientPlkVar" portType="this:ForClient" operation="receive" variable="msg" createInstance="yes"></bpel:receive>
+        <bpel:assign name="init-variables-Timer">
+            <bpel:copy>
+                <bpel:from>
+                    <bpel:literal>
+                        <this:start>
+                        </this:start>
+                    </bpel:literal>
+                </bpel:from>
+                <bpel:to>$msg1.body</bpel:to>
+            </bpel:copy>
+        </bpel:assign>
+        <bpel:scope>
+            <bpel:faultHandlers>
+                <bpel:catchAll>
+                    <bpel:empty/>
+                </bpel:catchAll>
+            </bpel:faultHandlers>
+            <bpel:scope>
+                <bpel:eventHandlers>
+                    <bpel:onAlarm>
+                        <bpel:for>"PT1S"</bpel:for>
+                        <bpel:scope>
+                            <bpel:throw faultName="tns:goodFault"/>
+                        </bpel:scope>
+                    </bpel:onAlarm>
+                </bpel:eventHandlers>
+                <bpel:if>
+                    <bpel:condition>$msg/start=10</bpel:condition>
+                    <bpel:sequence>
+                        <bpel:empty/>
+                    </bpel:sequence>
+                    <bpel:else>
+                        <bpel:sequence>
+                            <bpel:empty/>
+                            <bpel:wait>
+                                <bpel:for>'PT15S'</bpel:for>
+                            </bpel:wait>
+                        </bpel:sequence>
+                    </bpel:else>
+                </bpel:if>
+            </bpel:scope>
+        </bpel:scope>
+        <bpel:reply partnerLink="timerAndClientPlkVar" portType="this:ForClient" operation="receive" variable="msg1"></bpel:reply>
+    </bpel:sequence>
+</bpel:process>
\ No newline at end of file

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.deploy
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.deploy?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.deploy (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.deploy Fri Aug  3 16:19:40 2007
@@ -0,0 +1,8 @@
+<?xml version='1.0' encoding='utf-8'?>
+<dd:process xmlns:dd="http://ode.fivesight.com/schemas/2006/06/27/dd" xmlns:tns="http://www.intalio.com/" xmlns:Client="http://example.com/HandleTimer/Client" xmlns:root="http://example.com/HandleTimer" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:this="http://example.com/HandleTimer/Timer" name="this:Timer" fileName="HandleTimer-Timer.bpel">
+  <dd:property name="PATH">HandleTimer</dd:property>
+  <dd:property name="SVG">HandleTimer.svg</dd:property>
+  <dd:provide partnerLink="timerAndClientPlkVar">
+    <dd:service name="this:CanonicServiceForClient" port="canonicPort"/>
+  </dd:provide>
+</dd:process>
\ No newline at end of file

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.wsdl
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.wsdl?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.wsdl (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer-Timer.wsdl Fri Aug  3 16:19:40 2007
@@ -0,0 +1,47 @@
+<?xml version='1.0' encoding='utf-8'?>
+<wsdl:definitions xmlns:tns="http://ode.apache.org/example"
+                  xmlns:Client="http://example.com/HandleTimer/Client"
+                  xmlns:message="http://ode.apache.org/example"
+                  xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+                  xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" 
+                  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                  xmlns:root="http://example.com/HandleTimer"
+                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+                  xmlns:this="http://ode.apache.org/example"
+                  targetNamespace="http://ode.apache.org/example">
+    <wsdl:types>
+        <xs:schema targetNamespace="http://ode.apache.org/example">
+            <xs:include schemaLocation="message.xsd"/>
+        </xs:schema>
+    </wsdl:types>
+    <wsdl:message name="receiveRequest">
+        <wsdl:part name="body" element="tns:start"/>
+    </wsdl:message>
+    <wsdl:message name="receiveResponse">
+        <wsdl:part name="body" element="tns:start"/>
+    </wsdl:message>
+    <wsdl:portType name="ForClient">
+        <wsdl:operation name="receive">
+            <wsdl:input message="this:receiveRequest" name="receive"/>
+            <wsdl:output message="this:receiveResponse" name="receiveResponse"/>
+        </wsdl:operation>
+    </wsdl:portType>
+    <wsdl:binding name="CanonicBindingForClient" type="this:ForClient">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="receive">
+            <soap:operation style="document" soapAction="http://example.com/HandleTimer/Timer/ForClient/receive"/>
+            <wsdl:input>
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="CanonicServiceForClient">
+        <wsdl:port name="canonicPort" binding="this:CanonicBindingForClient">
+            <soap:address location="http://localhost:8080/ode/processes/HandleTimer/HandleTimer/Timer/Client"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer.wsdl
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer.wsdl?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer.wsdl (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/HandleTimer.wsdl Fri Aug  3 16:19:40 2007
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='utf-8'?>
+<wsdl:definitions xmlns:tns="http://ode.apache.org/example"
+                  xmlns:bpdm="http://www.intalio/designer/business-process-data-modeling"
+                  xmlns:Client="http://example.com/HandleTimer/Client"
+                  xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" 
+                  xmlns:pnlk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+                  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                  xmlns:root="http://example.com/HandleTimer"
+                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+                  targetNamespace="http://ode.apache.org/example">
+    <wsdl:import namespace="http://example.com/HandleTimer/Timer" location="HandleTimer-Timer.wsdl"/>
+    <pnlk:partnerLinkType name="TimerAndClient">
+        <pnlk:role name="Timer_for_Client" portType="tns:ForClient"/>
+    </pnlk:partnerLinkType>
+</wsdl:definitions>
\ No newline at end of file

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/deploy.xml
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/deploy.xml?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/deploy.xml (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/deploy.xml Fri Aug  3 16:19:40 2007
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<dd:deploy xmlns:dd="http://ode.fivesight.com/schemas/2006/06/27/dd">
+    <dd:process xmlns:dd="http://ode.fivesight.com/schemas/2006/06/27/dd"
+                xmlns:tns="http://ode.apache.org/example"
+                xmlns:Client="http://example.com/HandleTimer/Client"
+                xmlns:root="http://example.com/HandleTimer"
+                xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                name="tns:Timer" fileName="HandleTimer-Timer.bpel">
+
+        <dd:provide partnerLink="timerAndClientPlkVar">
+            <dd:service name="tns:CanonicServiceForClient" port="canonicPort" />
+        </dd:provide>
+    </dd:process>
+</dd:deploy>
\ No newline at end of file

Added: ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/message.xsd
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/message.xsd?view=auto&rev=562612
==============================================================================
--- ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/message.xsd (added)
+++ ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAlarm/message.xsd Fri Aug  3 16:19:40 2007
@@ -0,0 +1,8 @@
+<?xml version="1.0" ?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            targetNamespace="http://ode.apache.org/example"
+            xmlns:tns="http://ode.apache.org/example">
+  <!-- Data types -->
+  <xsd:element name="start" type="xsd:string"/>
+  
+</xsd:schema>