Author: bbrodt
Date: 2010-05-26 17:58:07 -0400 (Wed, 26 May 2010)
New Revision: 674
Added:
trunk/stress-tests/
trunk/stress-tests/.classpath
trunk/stress-tests/.project
trunk/stress-tests/.settings/
trunk/stress-tests/.settings/org.eclipse.jdt.core.prefs
trunk/stress-tests/.settings/org.maven.ide.eclipse.prefs
trunk/stress-tests/build.xml
trunk/stress-tests/pom.xml
trunk/stress-tests/src/
trunk/stress-tests/src/test/
trunk/stress-tests/src/test/java/
trunk/stress-tests/src/test/java/org/
trunk/stress-tests/src/test/java/org/jboss/
trunk/stress-tests/src/test/java/org/jboss/soa/
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTest.java
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestHelper.java
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestSetup.java
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployer.java
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployerJBoss.java
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/testcases/
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/testcases/RiftSaw155TestCase.java
trunk/stress-tests/src/test/resources/
trunk/stress-tests/src/test/resources/testcases/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/bpel-deploy.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbyeArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/helloArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/bpel-deploy.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbyeArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/helloArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/bpel-deploy.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbyeArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpel
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpelex
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/helloArtifacts.wsdl
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/build.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_request1.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_response3.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_fail_response1.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_request1.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response1.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response2.xml
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response3.xml
Modified:
trunk/pom.xml
trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java
Log:
https://jira.jboss.org/browse/RIFTSAW-182
RiftSaw stress-tests
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-05-26 17:34:39 UTC (rev 673)
+++ trunk/pom.xml 2010-05-26 21:58:07 UTC (rev 674)
@@ -63,6 +63,12 @@
<module>integration-tests</module>
</modules>
</profile>
+ <profile>
+ <id>stress</id>
+ <modules>
+ <module>stress-tests</module>
+ </modules>
+ </profile>
</profiles>
<properties>
Modified:
trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java
===================================================================
---
trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java 2010-05-26
17:34:39 UTC (rev 673)
+++
trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -569,9 +569,7 @@
case ACTVIATED:
// bounce the process
_bpelServer.unregister(pse.pid);
- if (pconf != null && ProcessState.ACTIVE.equals(pconf.getState())) {
- //
https://jira.jboss.org/browse/RIFTSAW-155
- // only re-register if this process is still active
+ if (pconf != null) {
_bpelServer.register(pconf);
} else {
__log.debug("slighly odd: recevied event " +
@@ -584,9 +582,7 @@
// remove the process
_bpelServer.unregister(pse.pid);
// bounce the process if necessary
- if (instantiated && pconf!=null &&
ProcessState.ACTIVE.equals(pconf.getState())) {
- //
https://jira.jboss.org/browse/RIFTSAW-155
- // only re-register if this process is still active
+ if (instantiated) {
if (pconf != null) {
_bpelServer.register(pconf);
} else {
Added: trunk/stress-tests/.classpath
===================================================================
--- trunk/stress-tests/.classpath (rev 0)
+++ trunk/stress-tests/.classpath 2010-05-26 21:58:07 UTC (rev 674)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src/test/java"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-1.6.0-openjdk-1.6.0.0"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
+ <classpathentry kind="lib"
path="/home/bbrodt/.m2/repository/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"/>
+ <classpathentry kind="lib"
path="/home/bbrodt/.m2/repository/org/jboss/logging/jboss-logging-spi/2.1.0.GA/jboss-logging-spi-2.1.0.GA.jar"/>
+ <classpathentry kind="lib"
path="/home/bbrodt/.m2/repository/org/jboss/soa/bpel/dependencies/esb/jbossesb-rosetta/4.7/jbossesb-rosetta-4.7.jar"/>
+ <classpathentry kind="lib"
path="/home/bbrodt/.m2/repository/org/mortbay/jetty/jetty-util/6.1.12rc1/jetty-util-6.1.12rc1.jar"
sourcepath="/home/bbrodt/.m2/repository/org/mortbay/jetty/jetty-util/6.1.12rc1/jetty-util-6.1.12rc1-sources.jar">
+ <attributes>
+ <attribute name="maven.groupId" value="org.mortbay.jetty"/>
+ <attribute name="maven.artifactId" value="jetty-util"/>
+ <attribute name="maven.version" value="6.1.12rc1"/>
+ <attribute name="maven.scope" value="test"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: trunk/stress-tests/.project
===================================================================
--- trunk/stress-tests/.project (rev 0)
+++ trunk/stress-tests/.project 2010-05-26 21:58:07 UTC (rev 674)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>stress-tests</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.maven.ide.eclipse.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Added: trunk/stress-tests/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/stress-tests/.settings/org.eclipse.jdt.core.prefs (rev
0)
+++ trunk/stress-tests/.settings/org.eclipse.jdt.core.prefs 2010-05-26 21:58:07 UTC (rev
674)
@@ -0,0 +1,12 @@
+#Mon May 17 14:29:08 MDT 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
Added: trunk/stress-tests/.settings/org.maven.ide.eclipse.prefs
===================================================================
--- trunk/stress-tests/.settings/org.maven.ide.eclipse.prefs (rev
0)
+++ trunk/stress-tests/.settings/org.maven.ide.eclipse.prefs 2010-05-26 21:58:07 UTC (rev
674)
@@ -0,0 +1,9 @@
+#Wed May 26 12:36:50 MDT 2010
+activeProfiles=
+eclipse.preferences.version=1
+fullBuildGoals=process-test-resources
+includeModules=false
+resolveWorkspaceProjects=true
+resourceFilterGoals=process-resources resources\:testResources
+skipCompilerPlugin=true
+version=1
Added: trunk/stress-tests/build.xml
===================================================================
--- trunk/stress-tests/build.xml (rev 0)
+++ trunk/stress-tests/build.xml 2010-05-26 21:58:07 UTC (rev 674)
@@ -0,0 +1,129 @@
+<project name="stress-tests" basedir=".">
+
+ <property environment="env" />
+ <property name="replace.qa.jdbc" value="true" />
+ <property name="startup.time" value="1" />
+
+ <property file="${riftsaw.test.deployment.properties}" />
+
+ <condition property="is.ojdbc.available">
+ <available file="${basedir}/../distribution/target/libs/ojdbc14.jar"
/>
+ </condition>
+
+ <condition property="is.replace.qa.jdbc">
+ <equals arg1="true" arg2="${replace.qa.jdbc}" />
+ </condition>
+
+ <target name="copy.ojdbc" if="is.ojdbc.available">
+ <copy file="${basedir}/../distribution/target/libs/ojdbc14.jar"
+
todir="${basedir}/../distribution/target/dist/riftsaw-${riftsaw.engine.version}/db/drivers"/>
+ </target>
+
+ <target name="copy.rosetta.aop">
+ <copy file="${dependency.rosetta.aop}"
+ tofile="${basedir}/target/rosetta.aop" />
+ </target>
+
+ <target name="replace.jdbc.files"
if="is.replace.qa.jdbc">
+ <echo>Replacing the QA's Lab jdbc files</echo>
+ <copy
todir="${basedir}/../distribution/target/dist/riftsaw-${riftsaw.engine.version}/db/jdbc"
overwrite="true">
+ <fileset dir="${basedir}/../qa/jdbc">
+ <include name="*.properties" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="unpack-distribution">
+ <mkdir dir="${basedir}/../distribution/target/dist"/>
+ <unzip dest="${basedir}/../distribution/target/dist"
src="${basedir}/../distribution/target/riftsaw-${riftsaw.engine.version}.zip"/>
+
+ <antcall target="copy.ojdbc" />
+ </target>
+
+ <target name="deploy-riftsaw" >
+ <antcall target="replace.jdbc.files" />
+ <ant antfile="build.xml"
+ target="deploy"
+ dir="${basedir}/../distribution/target/dist/riftsaw-${riftsaw.engine.version}/install">
+ <property name="org.jboss.as.home"
value="${org.jboss.as.home}" />
+ <property name="org.jboss.as.config"
value="${org.jboss.as.config}" />
+ <property name="org.jboss.esb.home"
value="${org.jboss.esb.home}" />
+ <property name="database" value="${database}" />
+ </ant>
+ </target>
+
+ <target name="undeploy-riftsaw" >
+ <ant antfile="build.xml"
+ target="undeploy"
+ dir="${basedir}/../distribution/target/dist/riftsaw-${riftsaw.engine.version}/install">
+ <property name="org.jboss.as.home"
value="${org.jboss.as.home}" />
+ <property name="org.jboss.as.config"
value="${org.jboss.as.config}" />
+ <property name="org.jboss.esb.home"
value="${org.jboss.esb.home}" />
+ <property name="database" value="${database}" />
+ </ant>
+ </target>
+
+ <target name="start-server" >
+
+ <java classname="org.jboss.Main"
+ fork="true" spawn="true"
+ dir="${org.jboss.as.home}/server/default" >
+ <arg line="-c default"/>
+ <jvmarg
value="-Djava.endorsed.dirs=${org.jboss.as.home}/lib/endorsed"/>
+ <jvmarg value="-Xms128m"/>
+ <jvmarg value="-Xmx512m"/>
+ <jvmarg value="-XX:MaxPermSize=256m"/>
+ <classpath>
+ <pathelement path="${org.jboss.as.home}/bin/run.jar"/>
+ <pathelement path="${JAVA_HOME}/lib/tools.jar"/>
+ </classpath>
+ </java>
+
+ <echo>Starting the server</echo>
+
+ <waitfor maxwait="4" maxwaitunit="minute">
+ <socket server="localhost" port="1099"/>
+ </waitfor>
+
+ <echo>JNP port detected, just waiting for ${startup.time} min 30 secs to ensure
server started</echo>
+
+ <sleep minutes="${startup.time}" seconds="30" />
+
+ <echo>Server has started</echo>
+
+ </target>
+
+ <target name="stop-server" >
+ <echo>Stopping the server</echo>
+ <echo>Server is at ${org.jboss.as.home}</echo>
+
+ <java classname="org.jboss.Shutdown" fork="true"
failonerror="false" resultproperty="shutdown.rc">
+ <arg line="-s jnp://localhost:1099 --shutdown"/>
+ <classpath>
+ <pathelement
path="${org.jboss.as.home}/bin/shutdown.jar"/>
+ <pathelement
path="${org.jboss.as.home}/client/jbossall-client.jar"/>
+ <pathelement path="${JAVA_HOME}/lib/tools.jar"/>
+ </classpath>
+ </java>
+ <echo>Shutdown rc = ${shutdown.rc}</echo>
+ <condition property="shutdown.okay">
+ <equals arg1="${shutdown.rc}" arg2="0"/>
+ </condition>
+ <fail unless="shutdown.okay" message="Unable to shut down JBoss
(maybe it hasn't fully started yet?)."/>
+ <echo>Waiting for JNP to stop listening...</echo>
+ <waitfor maxwait="2" maxwaitunit="minute">
+ <not>
+ <socket server="localhost" port="1099"/>
+ </not>
+ </waitfor>
+ </target>
+
+ <target name="package-tests" >
+ <echo>Package tests...</echo>
+ <antcall target="copy.rosetta.aop" />
+ <mkdir dir="target/tests"/>
+
+ <ant antfile="src/test/resources/testcases/RiftSaw_155/build.xml" />
+
+ </target>
+</project>
Added: trunk/stress-tests/pom.xml
===================================================================
--- trunk/stress-tests/pom.xml (rev 0)
+++ trunk/stress-tests/pom.xml 2010-05-26 21:58:07 UTC (rev 674)
@@ -0,0 +1,303 @@
+<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.soa.bpel</groupId>
+ <artifactId>stress-tests</artifactId>
+ <packaging>pom</packaging>
+ <version>2.0.1-SNAPSHOT</version>
+ <name>RiftSaw::Stress-Tests</name>
+ <parent>
+ <groupId>org.jboss.soa</groupId>
+ <artifactId>bpel</artifactId>
+ <version>2.0.1-SNAPSHOT</version>
+ </parent>
+ <properties>
+ <jboss.jbosssx.version>2.0.2.SP3</jboss.jbosssx.version>
+ <jboss.common.version>1.2.1.GA</jboss.common.version>
+ <jboss.version>5.1.0.GA</jboss.version>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>woodstox</groupId>
+ <artifactId>wstx-asl</artifactId>
+ <version>3.2.6</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>jbossesb-rosetta</artifactId>
+ <version>${jbossesb.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>jbossesb-config-model</artifactId>
+ <version>1.2.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>jbossts-common</artifactId>
+ <version>${jbossesb.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-client</artifactId>
+ <version>${jboss.version}</version>
+ <type>pom</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-aspects</artifactId>
+ <version>${jboss.version}</version>
+ <classifier>jboss-aop-jboss5</classifier>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-aspects</artifactId>
+ <version>${jboss.version}</version>
+ <classifier>jboss-aspect-library</classifier>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-aspects</artifactId>
+ <version>${jboss.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xmlbeans</groupId>
+ <artifactId>xmlbeans</artifactId>
+ <version>${xmlbeans.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <!--
+ we use the aop fixes for now <dependency>
+ <groupId>org.apache.ws.scout</groupId>
<artifactId>scout</artifactId>
+ <version>1.2</version> <scope>test</scope> <exclusions>
<exclusion>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId> </exclusion> </exclusions>
+ </dependency>
+ -->
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>scout</artifactId>
+ <version>1.2</version>
+ <classifier>aop</classifier>
+ <type>jar</type>
+ </dependency>
+ <!--
+ we use the aop fixes for now <dependency>
+ <groupId>org.apache.juddi</groupId>
+ <artifactId>juddi-client</artifactId>
<version>3.0.0</version>
+ <scope>test</scope> </dependency>
+ -->
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>juddi-client</artifactId>
+ <version>3.0.0</version>
+ <classifier>aop</classifier>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb</groupId>
+ <artifactId>juddi-core</artifactId>
+ <version>3.0.0</version>
+ <classifier>aop</classifier>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.soa.bpel.dependencies.esb.aop</groupId>
+ <artifactId>rosetta</artifactId>
+ <version>4.7</version>
+ <type>aop</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.juddi</groupId>
+ <artifactId>uddi-ws</artifactId>
+ <version>3.0.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>jetty-util</artifactId>
+ <version>6.1.12rc1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-configuration</groupId>
+ <artifactId>commons-configuration</artifactId>
+ <version>1.5</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.2.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.13</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.3</version>
+ <executions>
+ <execution>
+ <id>deploy-riftsaw</id>
+ <phase>pre-integration-test</phase>
+ <configuration>
+ <tasks>
+ <property name="compile_classpath"
refid="maven.compile.classpath" />
+ <property name="runtime_classpath"
refid="maven.runtime.classpath" />
+ <property name="test_classpath"
refid="maven.test.classpath" />
+ <property name="plugin_classpath"
refid="maven.plugin.classpath" />
+ <property name="project.version"
value="${project.version}" />
+ <property name="riftsaw.engine.version"
value="${riftsaw.engine.version}" />
+ <property name="dependency.bpel.deployer"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.deployer.jar.path}"
/>
+ <property name="dependency.bpel.engine"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.engine.jar.path}"
/>
+ <property name="dependency.bpel.jb-bpel-store"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.jb-bpel-store.jar.path}"
/>
+ <property name="dependency.rosetta.aop"
+
value="${maven.dependency.org.jboss.soa.bpel.dependencies.esb.aop.rosetta.aop.path}"
/>
+ <ant antfile="${basedir}/build.xml">
+ <target name="unpack-distribution" />
+ </ant>
+ <ant antfile="${basedir}/build.xml">
+ <target name="package-tests" />
+ </ant>
+ <ant antfile="${basedir}/build.xml">
+ <target name="deploy-riftsaw" />
+ </ant>
+ <ant antfile="${basedir}/build.xml">
+ <target name="start-server" />
+ </ant>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>undeploy-riftsaw</id>
+ <phase>post-integration-test</phase>
+ <configuration>
+ <tasks>
+ <property name="compile_classpath"
refid="maven.compile.classpath" />
+ <property name="runtime_classpath"
refid="maven.runtime.classpath" />
+ <property name="test_classpath"
refid="maven.test.classpath" />
+ <property name="plugin_classpath"
refid="maven.plugin.classpath" />
+ <property name="project.version"
value="${project.version}" />
+ <property name="riftsaw.engine.version"
value="${riftsaw.engine.version}" />
+ <property name="dependency.bpel.deployer"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.deployer.jar.path}"
/>
+ <property name="dependency.bpel.engine"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.engine.jar.path}"
/>
+ <property name="dependency.bpel.jb-bpel-store"
+ value="${maven.dependency.org.jboss.soa.bpel.runtime.jb-bpel-store.jar.path}"
/>
+ <ant antfile="${basedir}/build.xml">
+ <target name="stop-server" />
+ </ant>
+ <ant antfile="${basedir}/build.xml">
+ <target name="undeploy-riftsaw" />
+ </ant>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>compiler-it</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${basedir}/src/test/resources/conf</additionalClasspathElement>
+
<additionalClasspathElement>${basedir}/target/rosetta.aop</additionalClasspathElement>
+ </additionalClasspathElements>
+ <systemProperties>
+ <property>
+ <name>test.dir</name>
+ <value>${basedir}/target/tests</value>
+ </property>
+ <property>
+ <name>java.naming.factory.initial</name>
+ <value>org.jnp.interfaces.NamingContextFactory</value>
+ </property>
+ <property>
+ <name>java.naming.factory.url.pkgs</name>
+ <value>org.jboss.naming:org.jnp.interfaces</value>
+ </property>
+ <property>
+ <name>java.naming.provider.url</name>
+ <value>jnp://localhost:1099</value>
+ </property>
+ <property>
+ <name>java.rmi.server.ignoreStubClasses</name>
+ <value>true</value>
+ </property>
+ </systemProperties>
+ <testFailureIgnore>true</testFailureIgnore>
+ <includes>
+ <include>**/*TestCase.java</include>
+ <include>**/*Test.java</include>
+ </includes>
+ </configuration>
+ <executions>
+ <execution>
+ <id>test-riftsaw</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </reporting>
+</project>
Added: trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTest.java
===================================================================
--- trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTest.java
(rev 0)
+++ trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTest.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,186 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import javax.management.MBeanServerConnection;
+import javax.naming.NamingException;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.StringRequestEntity;
+import org.jboss.logging.Logger;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
+
+/**
+ * Base class for RiftSaw test cases. Based on
+ * equivalent class in JBossWS written by
+ * Thomas Diesler and Richard Opalka.
+ *
+ */
+public abstract class RiftSawTest extends TestCase {
+
+ protected static Logger log = Logger.getLogger(RiftSawTest.class.getName());
+ private RiftSawTestHelper delegate = new RiftSawTestHelper();
+
+ private String m_testSuiteName=null;
+
+ public RiftSawTest(String name) {
+ super(name);
+
+ m_testSuiteName = name;
+ }
+
+ public String getTestSuiteName() {
+ return(m_testSuiteName);
+ }
+
+ public MBeanServerConnection getServer() throws NamingException {
+ return RiftSawTestHelper.getServer();
+ }
+
+ /** Deploy the given archive
+ */
+ public void deploy(String archive) throws Exception {
+ delegate.deploy(getTestSuiteName(), archive);
+ }
+
+ /** Undeploy the given archive
+ */
+ public void undeploy(String archive) throws Exception {
+ delegate.undeploy(getTestSuiteName(), archive);
+ }
+
+ public File getTestFile(String filename) {
+ return delegate.getTestFile(getTestSuiteName(), filename);
+ }
+
+ public URL getTestFileURL(String filename) throws MalformedURLException {
+ return delegate.getTestFileURL(getTestSuiteName(), filename);
+ }
+
+ protected void assertMessageFromFile(String message, String mesgFile) throws Exception
{
+ String
mesgpath=System.getProperty("test.dir")+java.io.File.separator+getTestSuiteName()+
+ java.io.File.separator+mesgFile;
+
+ java.io.FileInputStream is=new java.io.FileInputStream(mesgpath);
+ byte[] b=new byte[is.available()];
+ is.read(b);
+ is.close();
+
+ String comparison=new String(b).trim();
+ message = message.trim();
+
+ if (!comparison.equals(message)) {
+ fail("Message in file '"+mesgFile+"' has content
["+comparison+
+ "] which is not the same as ["+message+"], lengths
"+comparison.length()+" to "+message.length());
+ }
+ }
+
+ protected void assertMessage(String message, String comparison) throws Exception {
+ message = message.trim();
+
+ if (!comparison.equals(message)) {
+ fail("Expected message has content ["+comparison+
+ "] which is not the same as ["+message+"], lengths
"+comparison.length()+" to "+message.length());
+ }
+ }
+
+ protected String sendSOAPMessage(String mesgFile, String url) throws Exception {
+ String
mesgpath=System.getProperty("test.dir")+java.io.File.separator+getTestSuiteName()+
+ java.io.File.separator+mesgFile;
+
+ java.io.FileInputStream is=new java.io.FileInputStream(mesgpath);
+ byte[] b=new byte[is.available()];
+ is.read(b);
+ is.close();
+
+ java.net.URL u=new java.net.URL(url);
+ String soapAction="";
+ String request=new String(b);
+
+ HttpClient httpClient = new HttpClient();
+ PostMethod httpPostMethod = new PostMethod(u.toExternalForm());
+ httpPostMethod.setRequestHeader("SOAPAction", "\"" +
soapAction + "\"");
+ httpPostMethod.setRequestHeader("Content-Type", "text/xml");
+ httpPostMethod.setRequestEntity(new StringRequestEntity(request));
+ httpClient.executeMethod(httpPostMethod);
+ String result=httpPostMethod.getResponseBodyAsString();
+
+ return(result);
+ }
+
+ protected String sendHttpPOSTMessage(String url) throws Exception {
+
+ java.net.URL u=new java.net.URL(url);
+ HttpClient httpClient = new HttpClient();
+ PostMethod httpPostMethod = new PostMethod(u.toExternalForm());
+ httpClient.executeMethod(httpPostMethod);
+ String result=httpPostMethod.getResponseBodyAsString();
+ httpPostMethod.releaseConnection();
+
+ return(result);
+ }
+
+ protected String sendHttpGETMessage(String url) throws Exception {
+
+ java.net.URL u=new java.net.URL(url);
+ HttpClient httpClient = new HttpClient();
+ GetMethod httpGetMethod = new GetMethod(u.toExternalForm());
+ httpClient.executeMethod(httpGetMethod);
+ String result=httpGetMethod.getResponseBodyAsString();
+ httpGetMethod.releaseConnection();
+
+ return(result);
+ }
+
+ protected String sendESBMessage(String message, String serviceCategory, String
serviceName)
+ throws Exception {
+ return(sendESBMessage(message, serviceCategory, serviceName, 10000));
+ }
+
+ protected String sendESBMessage(String message, String serviceCategory, String
serviceName, long timeout)
+ throws Exception {
+ String result=null;
+
+ System.setProperty("javax.xml.registry.ConnectionFactoryClass",
+ "org.apache.ws.scout.registry.ConnectionFactoryImpl");
+
+ Message esbMessage = MessageFactory.getInstance().getMessage();
+
+ esbMessage.getBody().add(message);
+
+ Message respMessage = new ServiceInvoker(serviceCategory,
serviceName).deliverSync(esbMessage, timeout);
+
+ result = (String)respMessage.getBody().get();
+
+ return(result);
+ }
+}
Added: trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestHelper.java
===================================================================
--- trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestHelper.java
(rev 0)
+++
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestHelper.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,109 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Hashtable;
+
+import javax.management.MBeanServerConnection;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+/**
+ * A RiftSaw test helper that deals with test deployment/undeployment, etc.
+ * Based on JBossWS equivalent class by Thomas Diesler and Richard Opalka.
+ *
+ */
+public class RiftSawTestHelper {
+ private static final String SYSPROP_TEST_ARCHIVE_DIRECTORY = "test.dir";
+
+ private static MBeanServerConnection server;
+ private static String testArchiveDir;
+
+ /** Deploy the given archive
+ */
+ public void deploy(String testName, String archive) throws Exception {
+ URL archiveURL = getTestFile(testName, archive).toURL();
+ getDeployer().deploy(archiveURL);
+ }
+
+ /** Undeploy the given archive
+ */
+ public void undeploy(String testName, String archive) throws Exception {
+ URL archiveURL = getTestFile(testName, archive).toURL();
+ getDeployer().undeploy(archiveURL);
+ }
+
+ public void undeploy(String testName, URL archiveURL) throws Exception {
+ getDeployer().undeploy(archiveURL);
+ }
+
+ @SuppressWarnings("unchecked")
+ public static MBeanServerConnection getServer() {
+ if (server == null)
+ {
+ Hashtable jndiEnv = null;
+ try
+ {
+ InitialContext iniCtx = new InitialContext();
+ jndiEnv = iniCtx.getEnvironment();
+ server =
(MBeanServerConnection)iniCtx.lookup("jmx/invoker/RMIAdaptor");
+ }
+ catch (NamingException ex)
+ {
+ throw new RuntimeException("Cannot obtain MBeanServerConnection using
jndi props: " + jndiEnv, ex);
+ }
+ }
+ return server;
+ }
+
+ private TestDeployer getDeployer() {
+ return new TestDeployerJBoss(getServer());
+ }
+
+ /** Try to discover the URL for the deployment archive */
+ public URL getTestFileURL(String testName, String archive) throws
MalformedURLException
+ {
+ return getTestFile(testName, archive).toURL();
+ }
+
+ /** Try to discover the File for the deployment archive */
+ public File getTestFile(String testName, String archive) {
+ File file = new File(getTestArchiveDir() + java.io.File.separator+
+ testName+ java.io.File.separator + archive);
+ if (file.exists())
+ return file;
+
+ String notSet = (getTestArchiveDir() == null ? " System property '" +
SYSPROP_TEST_ARCHIVE_DIRECTORY + "' not set." : "");
+ throw new IllegalArgumentException("Cannot obtain '" + file +
"'." + notSet);
+ }
+
+ public static String getTestArchiveDir() {
+ if (testArchiveDir == null)
+ testArchiveDir = System.getProperty(SYSPROP_TEST_ARCHIVE_DIRECTORY);
+
+ return testArchiveDir;
+ }
+
+}
Added: trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestSetup.java
===================================================================
--- trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestSetup.java
(rev 0)
+++
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/RiftSawTestSetup.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,195 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.StringTokenizer;
+
+import javax.management.MBeanServerConnection;
+import javax.naming.NamingException;
+
+import junit.extensions.TestSetup;
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import org.jboss.logging.Logger;
+
+/**
+ * A test setup that deploys/undeploys archives
+ *
+ * @author Thomas.Diesler(a)jboss.org
+ * @since 14-Oct-2004
+ */
+public class RiftSawTestSetup extends TestSetup
+{
+ // provide logging
+ private static Logger log = Logger.getLogger(RiftSawTestSetup.class);
+
+ protected RiftSawTestHelper delegate = new RiftSawTestHelper();
+ private String[] archives = new String[0];
+ private ClassLoader originalClassLoader;
+ private String m_testName=null;
+
+ public RiftSawTestSetup(Class<?> testClass, String testName, String archiveList)
{
+ super(new TestSuite(testClass));
+ getArchiveArray(archiveList);
+ m_testName = testName;
+ }
+
+ public RiftSawTestSetup(Test test, String archiveList)
+ {
+ super(test);
+ getArchiveArray(archiveList);
+ }
+
+ public RiftSawTestSetup(Test test)
+ {
+ super(test);
+ }
+
+ public File getArchiveFile(String archive)
+ {
+ return delegate.getTestFile(m_testName, archive);
+ }
+
+ public URL getArchiveURL(String archive) throws MalformedURLException
+ {
+ return delegate.getTestFile(m_testName, archive).toURL();
+ }
+
+ private void getArchiveArray(String archiveList)
+ {
+ if (archiveList != null)
+ {
+ StringTokenizer st = new StringTokenizer(archiveList, ", ");
+ archives = new String[st.countTokens()];
+
+ for (int i = 0; i < archives.length; i++)
+ archives[i] = st.nextToken();
+ }
+ }
+
+ protected void setUp() throws Exception {
+
+ List<URL> clientJars = new ArrayList<URL>();
+ for (int i = 0; i < archives.length; i++)
+ {
+ String archive = archives[i];
+ try
+ {
+ delegate.deploy(m_testName, archive);
+ }
+ catch (Exception ex)
+ {
+ ex.printStackTrace();
+ delegate.undeploy(m_testName, archive);
+ }
+
+ if (archive.endsWith("-client.jar"))
+ {
+ URL archiveURL = getArchiveURL(archive);
+ clientJars.add(archiveURL);
+ }
+ }
+
+ ClassLoader parent = Thread.currentThread().getContextClassLoader();
+ originalClassLoader = parent;
+ // add client jars to the class loader
+ if (!clientJars.isEmpty())
+ {
+ URL[] urls = new URL[clientJars.size()];
+ for (int i = 0; i < clientJars.size(); i++)
+ {
+ urls[i] = clientJars.get(i);
+ }
+ URLClassLoader cl = new URLClassLoader(urls, parent);
+ Thread.currentThread().setContextClassLoader(cl);
+ }
+
+ // Temporary wait until able to sync detect deployed ok
+ try {
+ synchronized(this) {
+ wait(10000);
+ }
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ protected void tearDown() throws Exception
+ {
+
+ // Temporarily move the deployed files - this is to ensure the server actually
undeploys
+ // the archive
+ java.util.Map<java.io.File, java.io.File> mapping=new
java.util.HashMap<java.io.File, java.io.File>();
+
+ try
+ {
+ for (int i = 0; i < archives.length; i++)
+ {
+ String archive = archives[archives.length - i - 1];
+
+ java.io.File file=delegate.getTestFile(m_testName, archive);
+
+ URL archiveURL = file.toURL();
+
+ java.io.File newfile=new java.io.File(file.getParentFile(),
"_"+file.getName());
+ file.renameTo(newfile);
+
+ mapping.put(newfile, file);
+
+ delegate.undeploy(m_testName, archiveURL);
+
+ }
+ }
+ finally
+ {
+ Thread.currentThread().setContextClassLoader(originalClassLoader);
+ }
+
+ // Temporary wait until able to sync detect deployed ok
+ try {
+ synchronized(this) {
+ wait(3000);
+ }
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+
+ // Move files back to original location
+ for (java.io.File file : mapping.keySet()) {
+ java.io.File newfile=mapping.get(file);
+ file.renameTo(newfile);
+ }
+ }
+
+ public MBeanServerConnection getServer() throws NamingException
+ {
+ return RiftSawTestHelper.getServer();
+ }
+}
Added: trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployer.java
===================================================================
--- trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployer.java
(rev 0)
+++ trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployer.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests;
+
+import java.net.URL;
+
+/**
+ * RiftSaw test deployer
+ *
+ * @author Thomas.Diesler(a)jboss.org
+ * @since 16-May-2006
+ */
+public interface TestDeployer {
+
+ /** Deploy the given archive
+ */
+ void deploy(URL archive) throws Exception;
+
+ /** Undeploy the given archive
+ */
+ void undeploy(URL archive) throws Exception;
+}
Added: trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployerJBoss.java
===================================================================
--- trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployerJBoss.java
(rev 0)
+++
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/TestDeployerJBoss.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,67 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests;
+
+import java.io.Serializable;
+import java.net.URL;
+import java.security.Principal;
+
+import javax.management.MBeanServerConnection;
+import javax.management.ObjectName;
+
+/*
+import org.jboss.wsf.spi.invocation.SecurityAdaptor;
+import org.jboss.wsf.spi.invocation.SecurityAdaptorFactory;
+import org.jboss.wsf.spi.SPIProvider;
+import org.jboss.wsf.spi.SPIProviderResolver;
+*/
+
+/**
+ * A JBossWS test helper that deals with test deployment/undeployment, etc.
+ *
+ * @author Thomas.Diesler(a)jboss.org
+ * @since 14-Oct-2004
+ */
+public class TestDeployerJBoss implements TestDeployer {
+ private static final String MAIN_DEPLOYER =
"jboss.system:service=MainDeployer";
+
+ private MBeanServerConnection server;
+
+ public TestDeployerJBoss(MBeanServerConnection server) {
+ this.server = server;
+ }
+
+ public void deploy(URL url) throws Exception
+ {
+ invokeMainDeployer("deploy", url);
+ }
+
+ public void undeploy(URL url) throws Exception
+ {
+ invokeMainDeployer("undeploy", url);
+ }
+
+ private void invokeMainDeployer(String methodName, URL url) throws Exception {
+ //System.out.println("INVOKE MAIN DEPLOYER: "+methodName+"
URL="+url);
+ server.invoke(new ObjectName(MAIN_DEPLOYER), methodName, new Object[] { url },
new String[] { "java.net.URL" });
+ }
+}
Added:
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/testcases/RiftSaw155TestCase.java
===================================================================
---
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/testcases/RiftSaw155TestCase.java
(rev 0)
+++
trunk/stress-tests/src/test/java/org/jboss/soa/bpel/tests/testcases/RiftSaw155TestCase.java 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,222 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.soa.bpel.tests.testcases;
+
+import java.util.Comparator;
+import java.util.Map;
+import java.util.TreeMap;
+import java.util.Map.Entry;
+
+import junit.framework.Test;
+
+import org.jboss.soa.bpel.tests.RiftSawTest;
+import org.jboss.soa.bpel.tests.RiftSawTestSetup;
+import org.mortbay.util.ajax.JSON;
+
+/**
+ * Test case for running the RiftSaw_10_doclit testcase.
+ */
+public class RiftSaw155TestCase extends RiftSawTest {
+
+ private static final String TEST_NAME = "RiftSaw_155";
+
+ public RiftSaw155TestCase() {
+ super(TEST_NAME);
+ }
+
+ public static Test suite() {
+// String test_dir = System.getProperty("test.dir");
+// System.setProperty("test.dir",
"/home/bbrodt/workspace/test/target/tests");
+// System.setProperty("riftsaw.test.deployment.properties",
"/home/bbrodt/jboss/riftsaw-2.0.1-SNAPSHOT/install/deployment.properties");
+// System.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
+// System.setProperty("java.naming.factory.url.pkgs",
"org.jboss.naming:org.jnp.interfaces");
+// System.setProperty("java.naming.provider.url",
"jnp://localhost:1099");
+// System.setProperty("java.rmi.server.ignoreStubClasses", "true");
+
+ return(new RiftSawTestSetup(RiftSaw155TestCase.class,
+ TEST_NAME, "RiftSaw_155-1.jar RiftSaw_155-2.jar RiftSaw_155-3.jar"));
+ }
+
+ private static class ProcInfo {
+ public ProcInfo(String name,String id,boolean suspended)
+ {
+ this.name = name;
+ this.id = id;
+ this.suspended = suspended;
+ }
+ public String name;
+ public String id;
+ public boolean suspended;
+ }
+
+ private class ProcNameCompare implements Comparator
+ {
+ @Override
+ public int compare(Object arg1, Object arg2) {
+ String name1 = arg1.toString();
+ String name2 = arg2.toString();
+ String namepart1 = name1.substring(0, name1.indexOf("-"));
+ String namepart2 = name2.substring(0, name2.indexOf("-"));
+ Integer versionpart1 = Integer.parseInt(
name1.substring(name1.indexOf("-")+1) );
+ Integer versionpart2 = Integer.parseInt(
name2.substring(name2.indexOf("-")+1) );
+ if ( namepart1.equals(namepart2) )
+ return versionpart1.compareTo(versionpart2);
+ return namepart1.compareTo(namepart2);
+ }
+ }
+
+ public void testSendHello() throws Exception {
+ try
+ {
+ String result = null;
+ Entry<String,ProcInfo> e;
+
+ // we should have 3 versions each of "hello" and "goodbye"
services
+ // which were deployed in order. send an initial test message to check
+ // that version 3 is the active one
+ result = sendAndValidate("http://localhost:8080/hello",
"hello_request1.xml", "hello_response3.xml");
+
+ TreeMap<String,ProcInfo> helloProcs = getProcesses("hello");
+ TreeMap<String,ProcInfo> goodbyeProcs = getProcesses("goodbye");
+
+ // make sure there is only one active version of each process
+ validateActiveProcesses(helloProcs,1);
+ validateActiveProcesses(goodbyeProcs,1);
+
+ // retire only version 3 of the "hello" process which should make version 2
active
+ // NOTE: version 3 is the last entry in the sorted TreeMap
+ e = helloProcs.lastEntry();
+ retireProcess(e.getValue().id);
+
+ // at this point there should be NO active versions of "hello"
+ result = sendAndValidate("http://localhost:8080/hello",
"hello_request1.xml", "hello_fail_response1.xml");
+
+ // activate "hello" version 1
+ // NOTE: this is the first entry in the TreeMap
+ e = helloProcs.firstEntry();
+ activateProcess(e.getValue().id);
+
+ // check that version 1 of "hello" is active
+ result = sendAndValidate("http://localhost:8080/hello",
"hello_request1.xml", "hello_response1.xml");
+ // and that there is only one version of each process
+ validateActiveProcesses(helloProcs,1);
+ validateActiveProcesses(goodbyeProcs,1);
+
+ // make sure we still have version 3 of "goodbye"
+ result = sendAndValidate("http://localhost:8080/goodbye",
"goodbye_request1.xml", "goodbye_response3.xml");
+
+ // undeploy version 1 of "hello" - there should be NO active versions of
this process
+ undeploy("RiftSaw_155-1.jar");
+ validateActiveProcesses(helloProcs,0);
+ validateActiveProcesses(goodbyeProcs,1);
+ // also remove it from our TreeMap
+ helloProcs.remove(helloProcs.firstKey());
+
+ // but "goodbye" should still be active
+ result = sendAndValidate("http://localhost:8080/goodbye",
"goodbye_request1.xml", "goodbye_response3.xml");
+
+ // activate version 2 of "hello"
+ // NOTE: this is the first entry in the TreeMap
+ e = helloProcs.firstEntry();
+ activateProcess(e.getValue().id);
+
+ // check that version 2 of "hello" is active
+ result = sendAndValidate("http://localhost:8080/hello",
"hello_request1.xml", "hello_response2.xml");
+ // and that there is only one version of each process
+ validateActiveProcesses(helloProcs,1);
+ validateActiveProcesses(goodbyeProcs,1);
+
+ // THE END!
+ }
+ catch(Exception ex)
+ {
+ fail(ex.getMessage());
+ }
+ }
+
+ private String sendAndValidate(String service, String request, String response) throws
Exception
+ {
+ String result=sendSOAPMessage(request, service);
+
+ // If testing against cxf, then result is presented slightly differently
+ if (result.indexOf("SOAP-ENV") != -1) {
+ result = result.replaceAll("SOAP-ENV", "env");
+ result = result.replaceAll(" xmlns=\"\"","");
+ result = result.replaceAll("\"","'");
+ result = result.replaceAll("<env:Header
/>","<env:Header></env:Header>");
+ }
+
+ assertMessageFromFile(result, response);
+ return result;
+ }
+
+ private TreeMap<String,ProcInfo> getProcesses(String name) throws Exception
+ {
+ TreeMap<String,ProcInfo> procs = new TreeMap<String,ProcInfo>();
+
+ // request the processes currently deployed - should only be "hello" and
"goodbye"
+ String result =
sendHttpGETMessage("http://localhost:8080/gwt-console-server/rs/engine/deployments");
+ Map root = (Map)JSON.parse(result);
+ Object[] deployments = (Object[])root.get("deployments");
+ for ( Object item : deployments)
+ {
+ Map dep = (Map)item;
+ ProcInfo proc = new ProcInfo(
+ dep.get("name").toString(),
+ dep.get("id").toString(),
+ (Boolean)dep.get("suspended")
+ );
+ if (proc.name.contains(name))
+ procs.put(proc.name,proc);
+ }
+ return procs;
+ }
+
+ private void validateActiveProcesses(TreeMap<String,ProcInfo> procs, int
expected)
+ {
+ // make sure there is only one active version of each process
+ String name = "unknown";
+ int count = 0;
+ for ( Entry<String, ProcInfo> p : procs.entrySet() )
+ {
+ name = p.getKey();
+ if (p.getValue().suspended == false)
+ ++count;
+ }
+ if ( count!=expected )
+ fail("The number of active '"+name+"' processes is
"+count+" instead of "+expected);
+ }
+
+ private void retireProcess(String pid) throws Exception
+ {
+ sendHttpPOSTMessage("http://localhost:8080/gwt-console-server/rs/engine/deployment/"
+
+ pid +
+ "/suspend");
+ }
+
+ private void activateProcess(String pid) throws Exception
+ {
+ sendHttpPOSTMessage("http://localhost:8080/gwt-console-server/rs/engine/deployment/"
+
+ pid +
+ "/resume");
+ }
+}
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/bpel-deploy.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/bpel-deploy.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/bpel-deploy.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deploy
xmlns="http://www.apache.org/ode/schemas/dd/2007/03"
xmlns:sample="http://eclipse.org/bpel/sample">
+ <process name="sample:hello">
+ <active>true</active>
+ <retired>false</retired>
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:hello" port="helloPort"/>
+ </provide>
+ </process>
+ <process name="sample:goodbye">
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:goodbye" port="goodbyePort"/>
+ </provide>
+ </process>
+</deploy>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpel
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,84 @@
+<!-- goodbye BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="goodbyeArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:goodbye"
+ myRole="goodbyeProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:goodbyeRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:goodbyeResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in goodbye.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:goodbye"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:goodbyeResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:goodbyeResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+ <![CDATA[concat("goodbye
",$input.payload/tns:input," this is version 1")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:goodbye"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbye.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274446812000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbyeArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbyeArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/goodbyeArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<definitions name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="goodbyeRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="goodbyeResponse">
+ <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="goodbyeRequestMessage">
+ <part name="payload" element="tns:goodbyeRequest"/>
+ </message>
+ <message name="goodbyeResponseMessage">
+ <part name="payload" element="tns:goodbyeResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the goodbye BPEL process -->
+ <portType name="goodbye">
+ <operation name="process">
+ <input message="tns:goodbyeRequestMessage" />
+ <output message="tns:goodbyeResponseMessage"/>
+ </operation>
+ </portType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="goodbye">
+ <plnk:role name="goodbyeProvider"
portType="tns:goodbye"/>
+ </plnk:partnerLinkType>
+
+ <binding name="goodbyeBinding" type="tns:goodbye">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+ <service name="goodbye">
+ <port name="goodbyePort" binding="tns:goodbyeBinding">
+ <soap:address location="http://localhost:8080/goodbye" />
+ </port>
+ </service>
+</definitions>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpel
===================================================================
--- trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,89 @@
+<!-- hello BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="helloArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:hello"
+ myRole="helloProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:helloRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:helloResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in hello.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:hello"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:helloResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:helloResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+
+
+
+ <![CDATA[concat("hello ",$input.payload/tns:input,"
this is version 1")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:hello"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/hello.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274446788000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/helloArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/helloArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version1/helloArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<definitions name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ >
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="helloRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="helloResponse">
+ <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="helloRequestMessage">
+ <part name="payload" element="tns:helloRequest"/>
+ </message>
+ <message name="helloResponseMessage">
+ <part name="payload" element="tns:helloResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the hello BPEL process -->
+ <portType name="hello">
+ <operation name="process">
+ <input message="tns:helloRequestMessage" />
+ <output message="tns:helloResponseMessage"/>
+ </operation>
+ </portType>
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="hello">
+ <plnk:role name="helloProvider" portType="tns:hello"/>
+ </plnk:partnerLinkType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ BINDING DEFINITION - Defines the message format and protocol details
+ for a web service.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <binding name="helloBinding" type="tns:hello">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ SERVICE DEFINITION - A service groups a set of port into
+ a service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <service name="hello">
+ <port name="helloPort" binding="tns:helloBinding">
+ <soap:address location="http://localhost:8080/hello" />
+ </port>
+ </service>
+</definitions>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/bpel-deploy.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/bpel-deploy.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/bpel-deploy.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deploy
xmlns="http://www.apache.org/ode/schemas/dd/2007/03"
xmlns:sample="http://eclipse.org/bpel/sample">
+ <process name="sample:hello">
+ <active>true</active>
+ <retired>false</retired>
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:hello" port="helloPort"/>
+ </provide>
+ </process>
+ <process name="sample:goodbye">
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:goodbye" port="goodbyePort"/>
+ </provide>
+ </process>
+</deploy>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpel
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,84 @@
+<!-- goodbye BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="goodbyeArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:goodbye"
+ myRole="goodbyeProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:goodbyeRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:goodbyeResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in goodbye.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:goodbye"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:goodbyeResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:goodbyeResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+ <![CDATA[concat("goodbye
",$input.payload/tns:input," this is version 2")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:goodbye"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbye.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274447573000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbyeArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbyeArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/goodbyeArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<definitions name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="goodbyeRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="goodbyeResponse">
+ <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="goodbyeRequestMessage">
+ <part name="payload" element="tns:goodbyeRequest"/>
+ </message>
+ <message name="goodbyeResponseMessage">
+ <part name="payload" element="tns:goodbyeResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the goodbye BPEL process -->
+ <portType name="goodbye">
+ <operation name="process">
+ <input message="tns:goodbyeRequestMessage" />
+ <output message="tns:goodbyeResponseMessage"/>
+ </operation>
+ </portType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="goodbye">
+ <plnk:role name="goodbyeProvider"
portType="tns:goodbye"/>
+ </plnk:partnerLinkType>
+
+ <binding name="goodbyeBinding" type="tns:goodbye">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+ <service name="goodbye">
+ <port name="goodbyePort" binding="tns:goodbyeBinding">
+ <soap:address location="http://localhost:8080/goodbye" />
+ </port>
+ </service>
+</definitions>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpel
===================================================================
--- trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,89 @@
+<!-- hello BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="helloArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:hello"
+ myRole="helloProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:helloRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:helloResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in hello.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:hello"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:helloResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:helloResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+
+
+
+ <![CDATA[concat("hello ",$input.payload/tns:input,"
this is version 2")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:hello"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/hello.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274447582000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/helloArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/helloArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version2/helloArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<definitions name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ >
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="helloRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="helloResponse">
+ <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="helloRequestMessage">
+ <part name="payload" element="tns:helloRequest"/>
+ </message>
+ <message name="helloResponseMessage">
+ <part name="payload" element="tns:helloResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the hello BPEL process -->
+ <portType name="hello">
+ <operation name="process">
+ <input message="tns:helloRequestMessage" />
+ <output message="tns:helloResponseMessage"/>
+ </operation>
+ </portType>
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="hello">
+ <plnk:role name="helloProvider" portType="tns:hello"/>
+ </plnk:partnerLinkType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ BINDING DEFINITION - Defines the message format and protocol details
+ for a web service.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <binding name="helloBinding" type="tns:hello">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ SERVICE DEFINITION - A service groups a set of port into
+ a service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <service name="hello">
+ <port name="helloPort" binding="tns:helloBinding">
+ <soap:address location="http://localhost:8080/hello" />
+ </port>
+ </service>
+</definitions>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/bpel-deploy.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/bpel-deploy.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/bpel-deploy.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deploy
xmlns="http://www.apache.org/ode/schemas/dd/2007/03"
xmlns:sample="http://eclipse.org/bpel/sample">
+ <process name="sample:hello">
+ <active>true</active>
+ <retired>false</retired>
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:hello" port="helloPort"/>
+ </provide>
+ </process>
+ <process name="sample:goodbye">
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="sample:goodbye" port="goodbyePort"/>
+ </provide>
+ </process>
+</deploy>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpel
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,84 @@
+<!-- goodbye BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="goodbyeArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:goodbye"
+ myRole="goodbyeProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:goodbyeRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:goodbyeResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in goodbye.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:goodbye"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:goodbyeResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:goodbyeResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+ <![CDATA[concat("goodbye
",$input.payload/tns:input," this is version 3")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:goodbye"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbye.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274447603000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="goodbye.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="goodbye.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbyeArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbyeArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/goodbyeArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<definitions name="goodbye"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="goodbyeRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="goodbyeResponse">
+ <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="goodbyeRequestMessage">
+ <part name="payload" element="tns:goodbyeRequest"/>
+ </message>
+ <message name="goodbyeResponseMessage">
+ <part name="payload" element="tns:goodbyeResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the goodbye BPEL process -->
+ <portType name="goodbye">
+ <operation name="process">
+ <input message="tns:goodbyeRequestMessage" />
+ <output message="tns:goodbyeResponseMessage"/>
+ </operation>
+ </portType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="goodbye">
+ <plnk:role name="goodbyeProvider"
portType="tns:goodbye"/>
+ </plnk:partnerLinkType>
+
+ <binding name="goodbyeBinding" type="tns:goodbye">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+ <service name="goodbye">
+ <port name="goodbyePort" binding="tns:goodbyeBinding">
+ <soap:address location="http://localhost:8080/goodbye" />
+ </port>
+ </service>
+</definitions>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpel
===================================================================
--- trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpel
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpel 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,89 @@
+<!-- hello BPEL Process [Generated by the Eclipse BPEL Designer] -->
+<bpel:process name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+ suppressJoinFailure="yes"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable...
+ >
+
+ <!-- Import the client WSDL -->
+ <bpel:import location="helloArtifacts.wsdl"
namespace="http://eclipse.org/bpel/sample"
+
importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <!-- ================================================================= -->
+ <!-- PARTNERLINKS -->
+ <!-- List of services participating in this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:partnerLinks>
+ <!-- The 'client' role represents the requester of this service.
-->
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:hello"
+ myRole="helloProvider"
+ />
+ </bpel:partnerLinks>
+
+ <!-- ================================================================= -->
+ <!-- VARIABLES -->
+ <!-- List of messages and XML documents used within this BPEL process -->
+ <!-- ================================================================= -->
+ <bpel:variables>
+ <!-- Reference to the message passed as input during initiation -->
+ <bpel:variable name="input"
+ messageType="tns:helloRequestMessage"/>
+
+ <!--
+ Reference to the message that will be returned to the requester
+ -->
+ <bpel:variable name="output"
+ messageType="tns:helloResponseMessage"/>
+ </bpel:variables>
+
+ <!-- ================================================================= -->
+ <!-- ORCHESTRATION LOGIC -->
+ <!-- Set of activities coordinating the flow of messages across the -->
+ <!-- services integrated within this business process -->
+ <!-- ================================================================= -->
+ <bpel:sequence name="main">
+
+ <!-- Receive input from requester.
+ Note: This maps to operation defined in hello.wsdl
+ -->
+ <bpel:receive name="receiveInput" partnerLink="client"
+ portType="tns:hello"
+ operation="process" variable="input"
+ createInstance="yes"/>
+
+
+
+ <!-- Generate reply to synchronous request -->
+ <bpel:assign validate="no" name="Assign">
+ <bpel:copy>
+ <bpel:from><bpel:literal><tns:helloResponse
xmlns:tns="http://eclipse.org/bpel/sample"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <tns:result></tns:result>
+</tns:helloResponse>
+</bpel:literal></bpel:from>
+ <bpel:to variable="output"
part="payload"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+
+
+
+
+
+ <![CDATA[concat("hello ",$input.payload/tns:input,"
this is version 3")]]>
+ </bpel:from>
+ <bpel:to part="payload" variable="output">
+ <bpel:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:reply name="replyOutput"
+ partnerLink="client"
+ portType="tns:hello"
+ operation="process"
+ variable="output"
+ />
+ </bpel:sequence>
+</bpel:process>
+
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpelex
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpelex
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/hello.bpelex 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<extensionmodel:ExtensionMap xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:extensionmodel="http:///extensionmodel.ecore"
xmlns:org.eclipse.bpel.ui.uiextensionmodel="http:///org/eclipse/bpel/ui/uiextensionmodel.ecore"
namespace="http://org.eclipse.bpel.ui/">
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@variables/(a)children.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:VariableExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.2"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#/"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ProcessExtension"
modificationStamp="1274447613000"/>
+ </extensions>
+ <extensions>
+ <extendedObject href="hello.bpel#//@activity/(a)activities.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:ActivityExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.1"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+ <extensions>
+ <extendedObject
href="hello.bpel#//@activity/@activities.1/(a)copy.0"/>
+ <extensionObject
xsi:type="org.eclipse.bpel.ui.uiextensionmodel:CopyExtension"/>
+ </extensions>
+</extensionmodel:ExtensionMap>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/helloArtifacts.wsdl
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/helloArtifacts.wsdl
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/bpel/version3/helloArtifacts.wsdl 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<definitions name="hello"
+
targetNamespace="http://eclipse.org/bpel/sample"
+
xmlns:tns="http://eclipse.org/bpel/sample"
+
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ >
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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://eclipse.org/bpel/sample"
+
xmlns="http://www.w3.org/2001/XMLSchema">
+
+ <element name="helloRequest">
+ <complexType>
+ <sequence>
+ <element name="input" type="string"/>
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="helloResponse">
+ <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="helloRequestMessage">
+ <part name="payload" element="tns:helloRequest"/>
+ </message>
+ <message name="helloResponseMessage">
+ <part name="payload" element="tns:helloResponse"/>
+ </message>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PORT TYPE DEFINITION - A port type groups a set of operations into
+ a logical service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+
+ <!-- portType implemented by the hello BPEL process -->
+ <portType name="hello">
+ <operation name="process">
+ <input message="tns:helloRequestMessage" />
+ <output message="tns:helloResponseMessage"/>
+ </operation>
+ </portType>
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ PARTNER LINK TYPE DEFINITION
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <plnk:partnerLinkType name="hello">
+ <plnk:role name="helloProvider" portType="tns:hello"/>
+ </plnk:partnerLinkType>
+
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ BINDING DEFINITION - Defines the message format and protocol details
+ for a web service.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <binding name="helloBinding" type="tns:hello">
+ <soap:binding style="document"
+
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="process">
+ <soap:operation
+
soapAction="http://eclipse.org/bpel/sample/process" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+
+<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ SERVICE DEFINITION - A service groups a set of port into
+ a service unit.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+ <service name="hello">
+ <port name="helloPort" binding="tns:helloBinding">
+ <soap:address location="http://localhost:8080/hello" />
+ </port>
+ </service>
+</definitions>
\ No newline at end of file
Added: trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/build.xml
===================================================================
--- trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/build.xml
(rev 0)
+++ trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/build.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,34 @@
+<project name="RiftSaw_155" default="deploy"
basedir="/home/bbrodt/workspace/test">
+
+ <description>
+ ${ant.project.name}
+ ${line.separator}
+ </description>
+
+ <property name="deploy.dir" value="${basedir}/target/tests"/>
+ <property name="test.dir"
value="${basedir}/src/test/resources/testcases/${ant.project.name}" />
+
+ <property name="jar1.name" value="${ant.project.name}-1.jar"
/>
+ <property name="jar2.name" value="${ant.project.name}-2.jar"
/>
+ <property name="jar3.name" value="${ant.project.name}-3.jar"
/>
+
+ <target name="deploy">
+ <echo>Deploy ${ant.project.name}</echo>
+ <mkdir dir="${deploy.dir}/${ant.project.name}" />
+ <jar basedir="${test.dir}/bpel/version1"
destfile="${deploy.dir}/${ant.project.name}/${jar1.name}" />
+ <jar basedir="${test.dir}/bpel/version2"
destfile="${deploy.dir}/${ant.project.name}/${jar2.name}" />
+ <jar basedir="${test.dir}/bpel/version3"
destfile="${deploy.dir}/${ant.project.name}/${jar3.name}" />
+
+ <copy todir="${deploy.dir}/${ant.project.name}">
+ <fileset dir="${test.dir}/messages"/>
+ </copy>
+ </target>
+
+ <target name="undeploy">
+ <echo>Undeploy ${ant.project.name}</echo>
+ <delete file="${deploy.dir}/${jar1.name}" />
+ <delete file="${deploy.dir}/${jar2.name}" />
+ <delete file="${deploy.dir}/${jar3.name}" />
+ </target>
+
+</project>
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_request1.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_request1.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_request1.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,8 @@
+<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:sam="http://eclipse.org/bpel/sample">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <sam:goodbyeRequest>
+ <sam:input>World</sam:input>
+ </sam:goodbyeRequest>
+ </soapenv:Body>
+</soapenv:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_response3.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_response3.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/goodbye_response3.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,3 @@
+<env:Envelope
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:...
xmlns='http://eclipse.org/bpel/sample'>
+ <tns:result
xmlns:tns='http://eclipse.org/bpel/sample'>goodbye World this
is version 3</tns:result>
+</goodbyeResponse></env:Body></env:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_fail_response1.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_fail_response1.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_fail_response1.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1 @@
+<env:Envelope
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:...
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><faul...
to invoke BPEL process: NoSuchService:
{http://eclipse.org/bpel/sample}hello</faultstring></env:Fault></env:Body></env:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_request1.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_request1.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_request1.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,8 @@
+<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:sam="http://eclipse.org/bpel/sample">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <sam:helloRequest>
+ <sam:input>World</sam:input>
+ </sam:helloRequest>
+ </soapenv:Body>
+</soapenv:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response1.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response1.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response1.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,3 @@
+<env:Envelope
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:...
xmlns='http://eclipse.org/bpel/sample'>
+ <tns:result
xmlns:tns='http://eclipse.org/bpel/sample'>hello World this
is version 1</tns:result>
+</helloResponse></env:Body></env:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response2.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response2.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response2.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,3 @@
+<env:Envelope
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:...
xmlns='http://eclipse.org/bpel/sample'>
+ <tns:result
xmlns:tns='http://eclipse.org/bpel/sample'>hello World this
is version 2</tns:result>
+</helloResponse></env:Body></env:Envelope>
\ No newline at end of file
Added:
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response3.xml
===================================================================
---
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response3.xml
(rev 0)
+++
trunk/stress-tests/src/test/resources/testcases/RiftSaw_155/messages/hello_response3.xml 2010-05-26
21:58:07 UTC (rev 674)
@@ -0,0 +1,3 @@
+<env:Envelope
xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:...
xmlns='http://eclipse.org/bpel/sample'>
+ <tns:result
xmlns:tns='http://eclipse.org/bpel/sample'>hello World this
is version 3</tns:result>
+</helloResponse></env:Body></env:Envelope>
\ No newline at end of file