[jboss-svn-commits] JBL Code SVN: r21497 - in labs/jbossrules/trunk/drools-process/drools-bpel/src: test/java/org/drools/bpel/test and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Aug 12 19:28:58 EDT 2008
Author: KrisVerlaenen
Date: 2008-08-12 19:28:58 -0400 (Tue, 12 Aug 2008)
New Revision: 21497
Added:
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/java/org/drools/bpel/test/BPELTest.java
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELFaultHandler.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELIf.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnAlarm.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnMessage.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELProcess.wsdl
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRepeatUntil.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRethrow.bpel
labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELWhile.bpel
Modified:
labs/jbossrules/trunk/drools-process/drools-bpel/src/main/java/org/drools/bpel/xpath/XMLDataType.java
Log:
JBRULES-1696: Extends WS-BPEL support
Modified: labs/jbossrules/trunk/drools-process/drools-bpel/src/main/java/org/drools/bpel/xpath/XMLDataType.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/main/java/org/drools/bpel/xpath/XMLDataType.java 2008-08-12 23:28:14 UTC (rev 21496)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/main/java/org/drools/bpel/xpath/XMLDataType.java 2008-08-12 23:28:58 UTC (rev 21497)
@@ -4,9 +4,9 @@
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.drools.process.core.datatype.DataType;
+import org.drools.process.core.datatype.impl.type.StringDataType;
-public class XMLDataType implements DataType {
+public class XMLDataType extends StringDataType {
private String typeDefinition;
@@ -14,10 +14,6 @@
this.typeDefinition = typeDefinition;
}
- public boolean verifyDataType(Object value) {
- return value instanceof String;
- }
-
public String getTypeDefinition() {
return typeDefinition;
}
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/java/org/drools/bpel/test/BPELTest.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/java/org/drools/bpel/test/BPELTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/java/org/drools/bpel/test/BPELTest.java 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,46 @@
+package org.drools.bpel.test;
+
+import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
+import org.drools.WorkingMemory;
+import org.drools.audit.WorkingMemoryFileLogger;
+import org.drools.bpel.compiler.BPELCompiler;
+import org.drools.bpel.instance.BPELProcessInstance;
+import org.drools.process.instance.impl.demo.UIWorkItemHandler;
+
+public class BPELTest {
+
+ public static final void main(String[] args) {
+ try {
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+ new BPELCompiler().loadProcess(ruleBase, "/BPELProcess.bpel");
+ WorkingMemory workingMemory = ruleBase.newStatefulSession();
+ final WorkingMemoryFileLogger logger = new WorkingMemoryFileLogger(workingMemory);
+ UIWorkItemHandler uiHandler = new UIWorkItemHandler() {
+ private static final long serialVersionUID = 4L;
+ public void dispose() {
+ super.dispose();
+ logger.writeToDisk();
+ }
+ };
+ workingMemory.getWorkItemManager().registerWorkItemHandler("WebServiceInvocation", uiHandler);
+ uiHandler.setVisible(true);
+ BPELProcessInstance processInstance = (BPELProcessInstance)
+ workingMemory.startProcess("http://drools.jboss.org/bpel/sample");
+ processInstance.signalEvent("message",
+ new String[] {
+ "client",
+ "{http://drools.jboss.org/bpel/sample}BPELProcess",
+ "process",
+ "<BPELProcessRequestMessage>" +
+ " <payload><input>input</input></payload>" +
+ " <input>hello</input>" +
+ "</BPELProcessRequestMessage>"
+ }
+ );
+ } catch (Throwable t) {
+ t.printStackTrace();
+ }
+ }
+
+}
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELFaultHandler.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELFaultHandler.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELFaultHandler.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="fault" type="ns1:string"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:scope name="Scope">
+ <bpws:variables>
+ <bpws:variable name="data" type="ns1:string"/>
+ </bpws:variables>
+ <bpws:faultHandlers>
+ <bpws:catch faultName="tns:ThrowDefaultFaultName" faultVariable="fault">
+ <bpws:assign name="Assign1" validate="no">
+ <bpws:copy>
+ <bpws:from variable="fault"/>
+ <bpws:to part="output" variable="output"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:catch>
+ </bpws:faultHandlers>
+ <bpws:sequence name="Sequence">
+ <bpws:assign name="Assign" validate="no">
+ <bpws:copy>
+ <bpws:from>
+ <bpws:literal>Fault Data</bpws:literal>
+ </bpws:from>
+ <bpws:to variable="data"/>
+ </bpws:copy>
+ </bpws:assign>
+ <bpws:throw faultName="tns:ThrowDefaultFaultName"
+ faultVariable="data" name="Throw"/>
+ </bpws:sequence>
+ </bpws:scope>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELIf.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELIf.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELIf.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="counter" type="ns1:integer"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:assign name="counter=1" validate="no">
+ <bpws:copy>
+ <bpws:from>
+ <bpws:literal>2
+</bpws:literal>
+ </bpws:from>
+ <bpws:to variable="counter"/>
+ </bpws:copy>
+ </bpws:assign>
+ <bpws:if name="If">
+ <bpws:empty name="Empty"/>
+ <bpws:condition><![CDATA[number($counter) = 1]]></bpws:condition>
+ <bpws:elseif>
+ <bpws:condition><![CDATA[number($counter) = 2]]></bpws:condition>
+ <bpws:empty name="Empty1"/>
+ </bpws:elseif>
+ </bpws:if>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnAlarm.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnAlarm.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnAlarm.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="counter" type="ns1:integer"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:pick name="Pick">
+ <bpws:onMessage operation="process2" partnerLink="client"
+ portType="tns:BPELProcess" variable="input">
+ <bpws:empty name="Empty1"/>
+ </bpws:onMessage>
+ <bpws:onAlarm>
+ <bpws:for><![CDATA['PT3S']]></bpws:for>
+ <bpws:scope name="scope">
+ <bpws:empty name="Empty"/>
+ </bpws:scope>
+ </bpws:onAlarm>
+ </bpws:pick>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnMessage.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnMessage.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELPickOnMessage.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="counter" type="ns1:integer"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:pick name="Pick">
+ <bpws:onMessage operation="process2" partnerLink="client"
+ portType="tns:BPELProcess" variable="input">
+ <bpws:assign name="Assign" validate="no">
+ <bpws:copy>
+ <bpws:from part="input" variable="input"/>
+ <bpws:to part="output" variable="output"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:onMessage>
+ <bpws:onMessage operation="process3" partnerLink="client"
+ portType="tns:BPELProcess" variable="input">
+ <bpws:assign name="Assign1" validate="no">
+ <bpws:copy>
+ <bpws:from part="input" variable="input"/>
+ <bpws:to part="output" variable="output"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:onMessage>
+ </bpws:pick>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELProcess.wsdl
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELProcess.wsdl (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELProcess.wsdl 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+<definitions name="BPELProcess"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:tns="http://drools.jboss.org/bpel/sample"
+ xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:p="http://www.w3.org/2001/XMLSchema">
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ TYPE DEFINITION - List of types participating in this BPEL process
+ The BPEL Designer will generate default request and response types
+ but you can define or import any XML Schema type and use them as part
+ of the message types.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <types>
+ <schema attributeFormDefault="unqualified" elementFormDefault="qualified"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="BPELProcessRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="BPELProcessResponse">
+ <complexType>
+ <sequence>
+ <element name="result" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+ </schema>
+ </types>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ MESSAGE TYPE DEFINITION - Definition of the message types used as
+ part of the port type defintions
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <message name="BPELProcessRequestMessage">
+ <part name="payload" element="tns:BPELProcessRequest"/>
+ <part name="input" type="p:string"></part>
+ </message>
+ <message name="BPELProcessResponseMessage">
+ <part name="payload" element="tns:BPELProcessResponse"/>
+ <part name="output" type="p:string"></part>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the BPELProcess BPEL process -->
+ <portType name="BPELProcess">
+ <operation name="process">
+ <input message="tns:BPELProcessRequestMessage" />
+ <output message="tns:BPELProcessResponseMessage"/>
+ </operation>
+ <operation name="process2">
+ <input message="tns:BPELProcessRequestMessage" />
+ </operation>
+ <operation name="process3">
+ <input message="tns:BPELProcessRequestMessage" />
+ </operation>
+ </portType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="BPELProcess">
+ <plnk:role name="BPELProcessProvider" portType="tns:BPELProcess"/>
+ </plnk:partnerLinkType>
+
+</definitions>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRepeatUntil.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRepeatUntil.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRepeatUntil.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="counter" type="ns1:integer"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:assign name="counter=1" validate="no">
+ <bpws:copy>
+ <bpws:from>
+ <bpws:literal>1</bpws:literal>
+ </bpws:from>
+ <bpws:to variable="counter"/>
+ </bpws:copy>
+ </bpws:assign>
+ <bpws:repeatUntil name="RepeatUntil">
+ <bpws:sequence name="Sequence1">
+ <bpws:empty name="Empty"/>
+ <bpws:assign name="counter++" validate="no">
+ <bpws:copy>
+ <bpws:from><![CDATA[number($counter) + 1]]></bpws:from>
+ <bpws:to variable="counter"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:sequence>
+ <bpws:condition><![CDATA[number($counter) > 3]]></bpws:condition>
+ </bpws:repeatUntil>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRethrow.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRethrow.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELRethrow.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="fault" type="ns1:string"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:scope name="Scope1">
+ <bpws:faultHandlers>
+ <bpws:catch faultName="tns:ThrowDefaultFaultName" faultVariable="fault">
+ <bpws:assign name="Assign" validate="no">
+ <bpws:copy>
+ <bpws:from variable="fault"/>
+ <bpws:to part="output" variable="output"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:catch>
+ </bpws:faultHandlers>
+ <bpws:scope name="Scope">
+ <bpws:variables>
+ <bpws:variable name="data" type="ns1:string"/>
+ </bpws:variables>
+ <bpws:faultHandlers>
+ <bpws:catch faultName="tns:ThrowDefaultFaultName" faultVariable="fault">
+ <bpws:rethrow name="Rethrow"/>
+ </bpws:catch>
+ </bpws:faultHandlers>
+ <bpws:sequence name="Sequence">
+ <bpws:assign name="Assign1" validate="no">
+ <bpws:copy>
+ <bpws:from>
+ <bpws:literal>xxx</bpws:literal>
+ </bpws:from>
+ <bpws:to variable="data"/>
+ </bpws:copy>
+ </bpws:assign>
+ <bpws:throw faultName="tns:ThrowDefaultFaultName"
+ faultVariable="data" name="Throw"/>
+ </bpws:sequence>
+ </bpws:scope>
+ </bpws:scope>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
Added: labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELWhile.bpel
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELWhile.bpel (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpel/src/test/resources/BPELWhile.bpel 2008-08-12 23:28:58 UTC (rev 21497)
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpws:process exitOnStandardFault="yes" name="BPELProcess"
+ suppressJoinFailure="yes"
+ targetNamespace="http://drools.jboss.org/bpel/sample"
+ xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://drools.jboss.org/bpel/sample">
+ <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
+ location="BPELProcess.wsdl" namespace="http://drools.jboss.org/bpel/sample"/>
+ <bpws:import importType="http://www.w3.org/2001/XMLSchema"
+ location="bundleentry://220/cache/www.w3.org/2001/XMLSchema.xsd" namespace="http://www.w3.org/2001/XMLSchema"/>
+ <bpws:partnerLinks>
+ <bpws:partnerLink myRole="BPELProcessProvider" name="client" partnerLinkType="tns:BPELProcess"/>
+ </bpws:partnerLinks>
+ <bpws:variables>
+ <bpws:variable messageType="tns:BPELProcessRequestMessage" name="input"/>
+ <bpws:variable messageType="tns:BPELProcessResponseMessage" name="output"/>
+ <bpws:variable name="counter" type="ns1:integer"/>
+ </bpws:variables>
+ <bpws:sequence name="main">
+ <bpws:receive createInstance="yes" name="receiveInput"
+ operation="process" partnerLink="client"
+ portType="tns:BPELProcess" variable="input"/>
+ <bpws:assign name="counter=1" validate="no">
+ <bpws:copy>
+ <bpws:from>
+ <bpws:literal>1</bpws:literal>
+ </bpws:from>
+ <bpws:to variable="counter"/>
+ </bpws:copy>
+ </bpws:assign>
+ <bpws:while name="While">
+ <bpws:condition><![CDATA[number($counter) < 3]]></bpws:condition>
+ <bpws:sequence name="Sequence">
+ <bpws:empty name="Empty"/>
+ <bpws:assign name="counter++" validate="no">
+ <bpws:copy>
+ <bpws:from><![CDATA[number($counter) + 1]]></bpws:from>
+ <bpws:to variable="counter"/>
+ </bpws:copy>
+ </bpws:assign>
+ </bpws:sequence>
+ </bpws:while>
+ <bpws:reply name="replyOutput" operation="process"
+ partnerLink="client" portType="tns:BPELProcess" variable="output"/>
+ </bpws:sequence>
+</bpws:process>
More information about the jboss-svn-commits
mailing list