[jboss-svn-commits] JBL Code SVN: r11957 - in labs/jbossesb/trunk/product/services: soapui-client and 20 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri May 18 12:42:44 EDT 2007
Author: tfennelly
Date: 2007-05-18 12:42:43 -0400 (Fri, 18 May 2007)
New Revision: 11957
Added:
labs/jbossesb/trunk/product/services/soapui-client/
labs/jbossesb/trunk/product/services/soapui-client/build.xml
labs/jbossesb/trunk/product/services/soapui-client/pom.xml
labs/jbossesb/trunk/product/services/soapui-client/src/
labs/jbossesb/trunk/product/services/soapui-client/src/lib/
labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-codec-1.2.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-httpclient-3.0.1.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-logging-1.0.4.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system-client.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/jsr173_1.0_api-xmlbeans-2.2.0.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/looks-2.1.2.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/milyn-commons-0.9-SNAPSHOT.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/ognl-2.6.9.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-1.7.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-xmlbeans-1.7.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/wsdl4j-1.6.2.jar
labs/jbossesb/trunk/product/services/soapui-client/src/lib/xbean-2.2.0.jar
labs/jbossesb/trunk/product/services/soapui-client/src/main/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/DomUtils.java
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBean.java
labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/
labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/
labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/jboss-service.xml
labs/jbossesb/trunk/product/services/soapui-client/src/test/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/BPELRetailer.wsdl
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.wsdl
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.xsd
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/CustomerOrder.xsd
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Retailer.wsdl
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/RetailerCallback.wsdl
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Shipping.wsdl
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBeanUnitTest.java
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/StandardTypes.xsd
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_01.xml
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_02.xml
labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_03.xml
labs/jbossesb/trunk/product/services/soapui-client/src/test/resources/
Log:
Added the soapUI client. Now handles collections on the request.
Added: labs/jbossesb/trunk/product/services/soapui-client/build.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/build.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/build.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,181 @@
+<!--
+ **** THIS SCRIPT WAS GENERATED BY MAVEN
+-->
+
+<project name="soapui-client" default="sar" basedir=".">
+ <property file="${user.home}/.m2/maven.properties"/>
+ <property name="maven.build.output" value="target/classes"/>
+ <property name="maven.build.directory" value="target"/>
+ <property name="maven.build.final.name" value="soapui-client"/>
+ <property name="maven.test.reports" value="${maven.build.directory}/test-reports"/>
+ <property name="maven.test.output" value="target/test-classes"/>
+ <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
+ <path id="build.classpath">
+ <!-- fileset dir="${maven.repo.local}">
+ <include name="eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar"/>
+ <include name="commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"/>
+ <include name="xmlbeans/xbean/2.2.0/xbean-2.2.0.jar"/>
+ <include name="commons-codec/commons-codec/1.2/commons-codec-1.2.jar"/>
+ <include name="eviware/soapui/1.7/soapui-1.7.jar"/>
+ <include name="com/jgoodies/looks/2.1.2/looks-2.1.2.jar"/>
+ <include name="commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"/>
+ </fileset -->
+ <fileset dir="src/lib" includes="*.jar" />
+ <fileset dir="../../../../lib/ext" includes="*.jar" />
+ </path>
+ <target name="clean" description="Clean the output directory">
+ <delete dir="${maven.build.directory}"/>
+ </target>
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.output}"/>
+ <javac destdir="${maven.build.output}" excludes="**/package.html" debug="true" deprecation="true"
+ optimize="false">
+ <src>
+ <pathelement location="src/main/java"/>
+ </src>
+ <classpath refid="build.classpath"/>
+ </javac>
+ <copy todir="${maven.build.output}">
+ <fileset dir="src/main/java">
+ <exclude name="**/*.java"/>
+ </fileset>
+ </copy>
+ <copy todir="${maven.build.output}">
+ <fileset dir="src/main/resources"/>
+ </copy>
+ </target>
+ <target name="jar" depends="compile,test" description="Clean the JAR">
+ <jar jarfile="${maven.build.directory}/${maven.build.final.name}.jar" basedir="${maven.build.output}"
+ excludes="**/package.html"/>
+ </target>
+ <target name="sar" depends="clean,jar" description="SAR">
+ <delete dir="${maven.build.directory}/sar" />
+ <mkdir dir="${maven.build.directory}/sar" />
+ <copy todir="${maven.build.directory}/sar">
+ <fileset dir="src" includes="lib/*.jar" excludes="lib/jboss-*.jar" />
+ <fileset dir="src/main/resources" />
+ </copy>
+ <copy todir="${maven.build.directory}/sar">
+ <!-- fileset dir="${maven.build.directory}" includes="${maven.build.final.name}.jar" / -->
+ <fileset dir="${maven.build.directory}/classes" />
+ </copy>
+
+ <jar jarfile="${maven.build.directory}/${maven.build.final.name}.sar" basedir="${maven.build.directory}/sar" />
+ </target>
+ <target name="compile-tests" depends="junit-present, compile" description="Compile the test code"
+ if="junit.present">
+ <mkdir dir="${maven.test.output}"/>
+ <javac destdir="${maven.test.output}" excludes="**/package.html" debug="true" deprecation="true"
+ optimize="false">
+ <src>
+ <pathelement location="src/test/java"/>
+ </src>
+ <classpath>
+ <path refid="build.classpath"/>
+ <pathelement location="${maven.build.output}"/>
+ </classpath>
+ </javac>
+ <copy todir="${maven.test.output}">
+ <fileset dir="src/test/java">
+ <exclude name="**/*.java"/>
+ </fileset>
+ </copy>
+ <copy todir="${maven.test.output}">
+ <fileset dir="src/test/resources"/>
+ </copy>
+ </target>
+ <target name="test" depends="junit-present, compile-tests" if="junit.present" description="Run the test cases">
+ <mkdir dir="${maven.test.reports}"/>
+ <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
+ <sysproperty key="basedir" value="."/>
+ <formatter type="xml"/>
+ <formatter type="plain" usefile="false"/>
+ <classpath>
+ <path refid="build.classpath"/>
+ <pathelement location="${maven.build.output}"/>
+ <pathelement location="${maven.test.output}"/>
+ </classpath>
+ <batchtest todir="${maven.test.reports}">
+ <fileset dir="src/test/java">
+ <include name="**/*Test.java"/>
+ <exclude name="**/*Abstract*Test.java"/>
+ </fileset>
+ </batchtest>
+ </junit>
+ </target>
+ <target name="test-junit-present">
+ <available classname="junit.framework.Test" property="junit.present"/>
+ </target>
+ <target name="junit-present" depends="test-junit-present" unless="junit.present">
+ <echo>================================= WARNING ================================</echo>
+ <echo>Junit isn't present in your $ANT_HOME/lib directory. Tests not executed.</echo>
+ <echo>==========================================================================</echo>
+ </target>
+ <target name="test-offline">
+ <condition property="maven.mode.offline">
+ <equals arg1="${build.sysclasspath}" arg2="only"/>
+ </condition>
+ </target>
+ <target name="get-deps" depends="test-offline" description="Download all dependencies" unless="maven.mode.offline">
+ <mkdir dir="${maven.repo.local}"/>
+ <!--
+ <get src="http://repository.jboss.com/maven2//eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui-xmlbeans/1.7/soapui-xmlbeans-1.7.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ dest="${maven.repo.local}/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ dest="${maven.repo.local}/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ dest="${maven.repo.local}/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//xmlbeans/xbean/2.2.0/xbean-2.2.0.jar"
+ dest="${maven.repo.local}/xmlbeans/xbean/2.2.0/xbean-2.2.0.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//xmlbeans/xbean/2.2.0/xbean-2.2.0.jar"
+ dest="${maven.repo.local}/xmlbeans/xbean/2.2.0/xbean-2.2.0.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/xmlbeans/xbean/2.2.0/xbean-2.2.0.jar"
+ dest="${maven.repo.local}/xmlbeans/xbean/2.2.0/xbean-2.2.0.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
+ dest="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
+ dest="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
+ dest="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//eviware/soapui/1.7/soapui-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui/1.7/soapui-1.7.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//eviware/soapui/1.7/soapui-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui/1.7/soapui-1.7.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/eviware/soapui/1.7/soapui-1.7.jar"
+ dest="${maven.repo.local}/eviware/soapui/1.7/soapui-1.7.jar" usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//com/jgoodies/looks/2.1.2/looks-2.1.2.jar"
+ dest="${maven.repo.local}/com/jgoodies/looks/2.1.2/looks-2.1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//com/jgoodies/looks/2.1.2/looks-2.1.2.jar"
+ dest="${maven.repo.local}/com/jgoodies/looks/2.1.2/looks-2.1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/com/jgoodies/looks/2.1.2/looks-2.1.2.jar"
+ dest="${maven.repo.local}/com/jgoodies/looks/2.1.2/looks-2.1.2.jar" usetimestamp="true"
+ ignoreerrors="true"/>
+ <get src="http://repository.jboss.com/maven2//commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ dest="${maven.repo.local}/commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://www.eviware.com/repository/maven2//commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ dest="${maven.repo.local}/commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ <get src="http://repo1.maven.org/maven2/commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ dest="${maven.repo.local}/commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar"
+ usetimestamp="true" ignoreerrors="true"/>
+ -->
+ </target>
+</project>
\ No newline at end of file
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/build.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/pom.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/pom.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/pom.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,171 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.soa.esb</groupId>
+ <artifactId>soapui-client</artifactId>
+ <version>4.2.MR2</version>
+ <name>SOAPUI Client ESB Service</name>
+ <description>SOAPUI Client Service</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>wsdl4j</groupId>
+ <artifactId>wsdl4j</artifactId>
+ <version>1.6.2</version>
+ <systemPath>${basedir}/src/lib/wsdl4j-1.6.2.jar</systemPath>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>eviware</groupId>
+ <artifactId>soapui</artifactId>
+ <version>1.7</version>
+ </dependency>
+ <dependency>
+ <groupId>eviware</groupId>
+ <artifactId>soapui-xmlbeans</artifactId>
+ <version>1.7</version>
+ </dependency>
+ <dependency>
+ <groupId>xmlbeans</groupId>
+ <artifactId>xbean</artifactId>
+ <version>2.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>xmlbeans</groupId>
+ <artifactId>jsr173_1.0_api-xmlbeans</artifactId>
+ <version>1.0</version>
+ <systemPath>${basedir}/src/lib/jsr173_1.0_api-xmlbeans-2.2.0.jar</systemPath>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.jgoodies</groupId>
+ <artifactId>looks</artifactId>
+ <version>2.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-system</artifactId>
+ <version>4.0.x</version>
+ <systemPath>${basedir}/src/lib/jboss-system.jar</systemPath>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-system-client</artifactId>
+ <version>4.0.x</version>
+ <systemPath>${basedir}/src/lib/jboss-system-client.jar</systemPath>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jbossall-client</artifactId>
+ <version>4.0.x</version>
+ <systemPath>${basedir}/../../../../lib/ext/jbossall-client.jar</systemPath>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.0.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>milyn</groupId>
+ <artifactId>milyn-commons</artifactId>
+ <version>0.9-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>ognl</groupId>
+ <artifactId>ognl</artifactId>
+ <version>2.6.9</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.8</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <defaultGoal>jboss-packaging:sar</defaultGoal>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-packaging-maven-plugin</artifactId>
+ <version>2.0-SNAPSHOT</version>
+ <configuration>
+ <!-- Required config - doesn't seem to pick it up from here by default. -->
+ <deploymentDescriptorFile>${basedir}/src/main/resources/META-INF/jboss-service.xml
+ </deploymentDescriptorFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>src/test/java</directory>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </testResource>
+ <testResource>
+ <directory>src/test/resources</directory>
+ </testResource>
+ </testResources>
+ </build>
+
+ <repositories>
+ <repository>
+ <id>JBoss Repo</id>
+ <url>http://repository.jboss.com/maven2/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>SOAP UI Repo</id>
+ <url>http://www.eviware.com/repository/maven2/</url>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>Codehaus Snapshots</id>
+ <url>http://snapshots.repository.codehaus.org/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ </pluginRepository>
+ </pluginRepositories>
+</project>
\ No newline at end of file
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/pom.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-codec-1.2.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-codec-1.2.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-httpclient-3.0.1.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-httpclient-3.0.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-logging-1.0.4.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/commons-logging-1.0.4.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system-client.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system-client.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jboss-system.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jsr173_1.0_api-xmlbeans-2.2.0.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/jsr173_1.0_api-xmlbeans-2.2.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/looks-2.1.2.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/looks-2.1.2.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/milyn-commons-0.9-SNAPSHOT.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/milyn-commons-0.9-SNAPSHOT.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/ognl-2.6.9.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/ognl-2.6.9.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-1.7.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-1.7.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-xmlbeans-1.7.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/soapui-xmlbeans-1.7.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/wsdl4j-1.6.2.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/wsdl4j-1.6.2.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/lib/xbean-2.2.0.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/lib/xbean-2.2.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/DomUtils.java
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/DomUtils.java (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/DomUtils.java 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.services.soapui;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.Element;
+
+import java.util.List;
+import java.util.Vector;
+
+/**
+ * DOM utility methods for the SOAPUI client.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class DomUtils {
+ /**
+ * Count the DOM element nodes before the supplied node, having the specified
+ * tag name, not including the node itself.
+ * <p/>
+ * Counts the sibling nodes.
+ *
+ * @param node Node whose element siblings are to be counted.
+ * @param tagName The tag name of the sibling elements to be counted.
+ * @return The number of siblings elements before the supplied node with the
+ * specified tag name.
+ */
+ protected static int countElementsBefore(Node node, String tagName) {
+ Node parent = node.getParentNode();
+
+ NodeList siblings = parent.getChildNodes();
+ int count = 0;
+ int siblingCount = siblings.getLength();
+
+ for (int i = 0; i < siblingCount; i++) {
+ Node sibling = siblings.item(i);
+
+ if (sibling == node) {
+ break;
+ }
+ if (sibling.getNodeType() == Node.ELEMENT_NODE && ((Element) sibling).getTagName().equals(tagName)) {
+ count++;
+ }
+ }
+
+ return count;
+ }
+
+ /**
+ * Copy the nodes of a NodeList into the supplied list.
+ * <p/>
+ * This is not a cloneCollectionTemplateElement. It's just a copy of the node references.
+ * <p/>
+ * Allows iteration over the Nodelist using the copy in the knowledge that
+ * the list will remain the same length, even if we modify the underlying NodeList.
+ * Using the NodeList can result in problems because elements can get removed from
+ * the list while we're iterating over it.
+ * <p/>
+ * <i>This code was acquired donated by the Milyn Smooks project.</i>
+ *
+ * @param nodeList Nodelist to copy.
+ * @return List copy.
+ */
+ public static List<Node> copyNodeList(NodeList nodeList) {
+ List<Node> copy = new Vector<Node>();
+
+ if (nodeList != null) {
+ int nodeCount = nodeList.getLength();
+
+ for (int i = 0; i < nodeCount; i++) {
+ copy.add(nodeList.item(i));
+ }
+ }
+
+ return copy;
+ }
+
+ protected static Element getNextSiblingElement(Node node) {
+ Node nextSibling = node.getNextSibling();
+
+ while (nextSibling != null) {
+ if (nextSibling.getNodeType() == Node.ELEMENT_NODE) {
+ return (Element) nextSibling;
+ }
+ nextSibling = nextSibling.getNextSibling();
+ }
+
+ return null;
+ }
+}
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/DomUtils.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,332 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.services.soapui;
+
+import com.eviware.soapui.impl.wsdl.WsdlInterface;
+import com.eviware.soapui.impl.wsdl.WsdlProject;
+import com.eviware.soapui.model.iface.Operation;
+
+import java.io.IOException;
+import java.io.ByteArrayInputStream;
+import java.util.*;
+
+import org.jboss.system.ServiceMBeanSupport;
+import org.w3c.dom.*;
+import org.xml.sax.SAXException;
+import org.milyn.xml.XmlUtil;
+import org.apache.log4j.Logger;
+
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.ParserConfigurationException;
+
+import ognl.OgnlException;
+import ognl.Ognl;
+
+/**
+ * Soap UI Soap Client Service MBean.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SoapUIClientService extends ServiceMBeanSupport implements SoapUIClientServiceMBean {
+
+ private static final String SOAPUICL_NS = "http://jbossesb.jboss.org/soapui-client";
+ private static final String SOAPUICL_NS_PREFIX = "soapui:";
+ private static final String IS_CLONE_ATTRIB = "is-cloneCollectionTemplateElement";
+ private static final String OGNL_ATTRIB = "ognl";
+ private static Logger logger = Logger.getLogger(SoapUIClientService.class);
+ private Map<String, WsdlInterface[]> wsdls = new HashMap<String, WsdlInterface[]>();
+ private DocumentBuilder docBuilder;
+
+ /**
+ * Public default constructor.
+ */
+ public SoapUIClientService() {
+ DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
+ docBuilderFactory.setNamespaceAware(true);
+ try {
+ docBuilder = docBuilderFactory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ throw new RuntimeException("Failed to construct DocumentBuilder instance.", e);
+ }
+ }
+
+ /**
+ * Build a SOAP request for the specified operation on the specified WSDL.
+ *
+ * @param wsdl WSDL URL.
+ * @param operation Operation name.
+ * @param params Message parameter map.
+ * @return The SOAP Message.
+ * @throws IOException Failed to load WSDL.
+ */
+ public String buildRequest(String wsdl, String operation, Map params) throws IOException, UnsupportedOperationException, SAXException {
+ Operation operationInst = getOperation(wsdl, operation);
+ String requestTemplate = operationInst.getRequestAt(0).getRequestContent();
+
+ return injectParameters(requestTemplate, params);
+ }
+
+ /**
+ * Populate the supplied SOAP responseObject from the supplied soapMessage.
+ *
+ * @param wsdl WSDL URL.
+ * @param operation Operation name.
+ * @param soapMessage The soap message containing the data.
+ * @param responseObject The soap response object to be populated fromthe data in the soap message.
+ * @return The populated responseObject, or a fault object if the message contains a fault.
+ * @throws IOException Failed to load WSDL.
+ * @throws UnsupportedOperationException Operation not supported on specified WSDL.
+ * @throws SAXException Failed to parse the SOAP message.
+ */
+ public Object populateResponse(String wsdl, String operation, String soapMessage, Object responseObject) throws IOException, UnsupportedOperationException, SAXException {
+ throw new UnsupportedOperationException("Not yet implemented!");
+ }
+
+ /**
+ * Get the 1st endpoint from the specified WSDL.
+ *
+ * @param wsdl WSDL URL.
+ * @return The operation endpoint URL.
+ * @throws IOException Failed to load WSDL.
+ */
+ public String getEndpoint(String wsdl) throws IOException {
+ WsdlInterface[] wsdlInterfaces = getWsdlInterfaces(wsdl);
+
+ return wsdlInterfaces[0].getEndpoints()[0];
+ }
+
+ private WsdlInterface[] getWsdlInterfaces(String wsdl) throws IOException {
+ try {
+ WsdlInterface[] wsdlInterfaces = wsdls.get(wsdl);
+ if (wsdlInterfaces == null) {
+ WsdlProject wsdlProject = new WsdlProject();
+ wsdlInterfaces = wsdlProject.importWsdl(wsdl, true);
+ wsdls.put(wsdl, wsdlInterfaces);
+ }
+ return wsdlInterfaces;
+ } catch (Exception e) {
+ IOException ioe = new IOException("Failed to import WSDL '" + wsdl + "'.");
+ ioe.initCause(e);
+ throw ioe;
+ }
+ }
+
+ private Operation getOperation(String wsdl, String operation) throws IOException, UnsupportedOperationException {
+ WsdlInterface[] wsdlInterfaces = getWsdlInterfaces(wsdl);
+
+ for (WsdlInterface wsdlInterface : wsdlInterfaces) {
+ Operation operationInst = wsdlInterface.getOperationByName(operation);
+
+ if (operationInst != null) {
+ return operationInst;
+ }
+ }
+ throw new UnsupportedOperationException("Operation '" + operation + "' not supported by WSDL '" + wsdl + "'.");
+ }
+
+ private String injectParameters(String soapMessage, Map params) throws IOException, SAXException {
+ Document messageDoc = docBuilder.parse(new ByteArrayInputStream(soapMessage.getBytes()));
+ Element docRoot = messageDoc.getDocumentElement();
+
+ expandMessage(docRoot, params);
+ injectParameters(docRoot, params);
+
+ return XmlUtil.serialize(messageDoc.getChildNodes());
+ }
+
+ /**
+ * Expand the message to accommodate data collections.
+ * <p/>
+ * It basically just clones the message where appropriate.
+ *
+ * @param element The element to be processed.
+ * @param params The message params. Uses the message params to
+ * decide whether or not cloning is required.
+ */
+ private void expandMessage(Element element, Map params) {
+
+ // If this element is not a cloneCollectionTemplateElement, check does it need to be cloned...
+ if(!element.hasAttributeNS(SOAPUICL_NS, IS_CLONE_ATTRIB)) {
+ String ognl = getOGNLExpression(element);
+ Object param;
+ try {
+ param = Ognl.getValue(ognl, params);
+ if(param != null) {
+ Class paramRuntime = param.getClass();
+
+ if(paramRuntime.isArray()) {
+ Element item = getCollectionItemElement(element);
+ // It's an "array" containing node. Grab the first/only
+ // Element in it and clone it the required number of times.
+ cloneCollectionTemplateElement(item, ((Object[])param).length - 1, ognl);
+ } else if(Collection.class.isAssignableFrom(paramRuntime)) {
+ Element item = getCollectionItemElement(element);
+ // It's a "collection" containing node. Grab the first/only
+ // Element in it and clone it the required number of times.
+ cloneCollectionTemplateElement(item, ((Collection)param).size() - 1, ognl);
+ }
+ }
+ } catch (OgnlException ex) {
+ if(logger.isDebugEnabled()) {
+ logger.debug("OGNL Error.", ex);
+ }
+ }
+ }
+
+ // Now do the same for the child elements...
+ List<Node> children = DomUtils.copyNodeList(element.getChildNodes());
+ for (Node node : children) {
+ if (node.getNodeType() == Node.ELEMENT_NODE) {
+ expandMessage((Element) node, params);
+ }
+ }
+ }
+
+ private Element getCollectionItemElement(Element element) {
+ Node firstNode = element.getFirstChild();
+ Element firstElement = null;
+
+ // Basicall, find the first Element child...
+ if(firstNode != null) {
+ if(firstNode.getNodeType() == Node.ELEMENT_NODE) {
+ firstElement = (Element)firstNode;
+ } else {
+ firstElement = DomUtils.getNextSiblingElement(firstNode);
+ }
+ }
+
+ if(firstElement == null) {
+ logger.warn("Message template not in sync with parameter map. Map contains a collection at a point at which the WSDL doesn't support this collection. Element: " + element.getLocalName());
+ }
+
+ return firstElement;
+ }
+
+ /**
+ * Clone a collection node.
+ * <p/>
+ * Note we have to frig with the OGNL expressions for collections/arrays because the
+ * collection entry is represented by [0], [1] etc in the OGNL expression, not the actual
+ * element name on the DOM e.g. collection node "order/items/item" (where "item" is the
+ * actual collection entry) maps to the OGNL expression "order.items[0]" etc.
+ *
+ * @param element The collection/array "entry" sub-branch.
+ * @param cloneCount The number of times it needs to be cloned.
+ * @param ognl The OGNL expression for the collection/array. Not including the
+ * indexing part.
+ */
+ private void cloneCollectionTemplateElement(Element element, int cloneCount, String ognl) {
+ if(element == null) {
+ return;
+ }
+
+ Element nextSibling = DomUtils.getNextSiblingElement(element);
+ Node parent = element.getParentNode();
+
+ element.setAttributeNS(SOAPUICL_NS, SOAPUICL_NS_PREFIX + OGNL_ATTRIB, ognl + "[0]");
+ for(int i = 0; i < cloneCount; i++) {
+ Element clone = (Element) element.cloneNode(true);
+
+ clone.setAttributeNS(SOAPUICL_NS, SOAPUICL_NS_PREFIX + IS_CLONE_ATTRIB, "true");
+ clone.setAttributeNS(SOAPUICL_NS, SOAPUICL_NS_PREFIX + OGNL_ATTRIB, ognl + "[" + Integer.toString(i + 1) + "]");
+ if(nextSibling == null) {
+ parent.appendChild(clone);
+ } else {
+ parent.insertBefore(clone, nextSibling);
+ }
+ nextSibling = DomUtils.getNextSiblingElement(clone);
+ }
+ }
+
+ private void injectParameters(Element element, Map params) {
+ NodeList children = element.getChildNodes();
+ int childCount = children.getLength();
+
+ for (int i = 0; i < childCount; i++) {
+ Node node = children.item(i);
+
+ if (childCount == 1 && node.getNodeType() == Node.TEXT_NODE) {
+ if (node.getTextContent().equals("?")) {
+ String ognl = getOGNLExpression(element);
+ Object param;
+
+ try {
+ param = Ognl.getValue(ognl, params);
+ } catch (OgnlException ex) {
+ param = "";
+ }
+
+ element.removeChild(node);
+ element.appendChild(element.getOwnerDocument().createTextNode(param.toString()));
+ }
+ } else if (node.getNodeType() == Node.ELEMENT_NODE) {
+ injectParameters((Element) node, params);
+ }
+ }
+
+ element.removeAttributeNS(SOAPUICL_NS, IS_CLONE_ATTRIB);
+ element.removeAttributeNS(SOAPUICL_NS, OGNL_ATTRIB);
+ }
+
+ private String getOGNLExpression(Element element) {
+ StringBuffer xpath = new StringBuffer();
+ Node parent = element.getParentNode();
+
+ xpath.append(getOGNLToken(element));
+
+ while (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
+ if (parent.getLocalName().equalsIgnoreCase("body") &&
+ parent.getNamespaceURI().equalsIgnoreCase("http://schemas.xmlsoap.org/soap/envelope/")) {
+ break;
+ }
+
+ Element parentElement = (Element) parent;
+ String preassignedOgnl = parentElement.getAttributeNS(SOAPUICL_NS, OGNL_ATTRIB);
+ if(preassignedOgnl != null && !preassignedOgnl.equals("")) {
+ xpath.insert(0, "." + preassignedOgnl);
+ break;
+ } else {
+ xpath.insert(0, getOGNLToken(parentElement));
+ }
+ parent = parent.getParentNode();
+ }
+
+ // Remove the leading '.'
+ xpath.deleteCharAt(0);
+
+ return xpath.toString();
+ }
+
+ private String getOGNLToken(Element element) {
+ String localName = element.getLocalName();
+ int count = DomUtils.countElementsBefore(element, element.getTagName());
+ String xpathToken;
+
+ if (count > 0) {
+ xpathToken = "." + localName + "[" + (count + 1) + "]";
+ } else {
+ xpathToken = "." + localName;
+ }
+
+ return xpathToken;
+ }
+
+}
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientService.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBean.java
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBean.java (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBean.java 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,74 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.services.soapui;
+
+import java.io.IOException;
+import java.util.Map;
+
+import org.jboss.system.ServiceMBean;
+import org.xml.sax.SAXException;
+
+/**
+ * Soap UI Soap Client Service.
+ * <p/>
+ * Embeds the <a href="http://www.soapui.org/">soapui</a> tool, using it to generate
+ * a valid soap requests, as well as unmarshal response data from a valid soap response.
+ *
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public interface SoapUIClientServiceMBean extends ServiceMBean {
+
+ /**
+ * Build a SOAP request for the specified operation on the specified WSDL.
+ *
+ * @param wsdl WSDL URL.
+ * @param operation Operation name.
+ * @param params Message parameter map.
+ * @return The SOAP Message.
+ * @throws IOException Failed to load WSDL.
+ * @throws UnsupportedOperationException Operation not supported on specified WSDL.
+ * @throws SAXException Failed to parse the SOAP UI generated request message.
+ */
+ public abstract String buildRequest(String wsdl, String operation, Map params) throws IOException, UnsupportedOperationException, SAXException;
+
+ /**
+ * Populate the supplied SOAP responseObject from the supplied soapMessage.
+ *
+ * @param wsdl WSDL URL.
+ * @param operation Operation name.
+ * @param soapMessage The soap message containing the data.
+ * @param responseObject The soap response object to be populated fromthe data in the soap message.
+ * @return The populated responseObject, or a fault object if the message contains a fault.
+ * @throws IOException Failed to load WSDL.
+ * @throws UnsupportedOperationException Operation not supported on specified WSDL.
+ * @throws SAXException Failed to parse the SOAP message.
+ */
+ public abstract Object populateResponse(String wsdl, String operation, String soapMessage, Object responseObject) throws IOException, UnsupportedOperationException, SAXException;
+
+ /**
+ * Get the 1st endpoint from the specified WSDL.
+ *
+ * @param wsdl WSDL URL.
+ * @return The operation endpoint URL.
+ * @throws IOException Failed to load WSDL.
+ */
+ public abstract String getEndpoint(String wsdl) throws IOException;
+}
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/main/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBean.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/jboss-service.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/jboss-service.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/jboss-service.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<service>
+ <mbean code="org.jboss.soa.esb.services.soapui.SoapUIClientService"
+ name="jboss.esb:service=SoapUIClientService">
+ </mbean>
+ <loader-repository>
+ jboss.esb:loader=soapui-client.sar
+ </loader-repository>
+</service>
\ No newline at end of file
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/main/resources/META-INF/jboss-service.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/BPELRetailer.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/BPELRetailer.wsdl (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/BPELRetailer.wsdl 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions name="BPELRetailer" targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/bpelretailer/2006/04/BPELRetailer.wsdl" xmlns:tns="http://docs.active-endpoints.com/activebpel/sample/wsdl/bpelretailer/2006/04/BPELRetailer.wsdl" xmlns:ord="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd" xmlns:cust="http://schemas.active-endpoints.com/sample/customer/2006/04/Customer.xsd" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:rws="http://docs.active-endpoints.com/activebpel/sample/wsdl/retailer/2006/04/Retailer.wsdl" xmlns:cws="http://docs.active-endpoints.com/activebpel/sample/wsdl/customer/2006/04/Customer.wsdl">
+ <wsdl:import namespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/retailer/2006/04/Retailer.wsdl" location="Retailer.wsdl"/>
+ <wsdl:import namespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/customer/2006/04/Customer.wsdl" location="Customer.wsdl"/>
+<plnk:partnerLinkType xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" name="PurchasingPLT">
+ <plnk:role name="Buyer" portType="cws:CustomerPortType"/>
+ <plnk:role name="Seller" portType="rws:RetailerPortType"/>
+</plnk:partnerLinkType>
+<vprop:property xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" name="customerNumber" type="xsd:string"/>
+<vprop:property xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" name="poNumber" type="xsd:string"/>
+<vprop:propertyAlias xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" messageType="cws:SendOrderConfirmationRequest" part="Document" propertyName="tns:poNumber">
+ <vprop:query>/cust:orderConfirmation/cust:poNumber</vprop:query>
+</vprop:propertyAlias>
+<vprop:propertyAlias xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" messageType="rws:SubmitOrderRequest" part="Document" propertyName="tns:poNumber">
+ <vprop:query>
+ /ord:customerOrder/ord:header/ord:poNumber
+ </vprop:query>
+</vprop:propertyAlias>
+<vprop:property xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" name="orderNum" type="xsd:string"/>
+<vprop:propertyAlias xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" messageType="ns:OrderManagerPortType_customerOrderResponse" part="result" propertyName="tns:orderNum"/>
+<vprop:propertyAlias xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" messageType="ns:SendSalesOrderNotificationRequest" part="Document" propertyName="tns:orderNum">
+ <vprop:query>ns:orderNumber</vprop:query>
+</vprop:propertyAlias>
+<vprop:propertyAlias xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" messageType="rws:SubmitOrderRequest" part="Document" propertyName="tns:customerNumber">
+ <vprop:query>ord:header/ord:customerNumber</vprop:query>
+</vprop:propertyAlias>
+</wsdl:definitions>
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.wsdl (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.wsdl 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions name="Customer"
+ targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/customer/2006/04/Customer.wsdl"
+ xmlns:tns="http://docs.active-endpoints.com/activebpel/sample/wsdl/customer/2006/04/Customer.wsdl"
+ xmlns:cust="http://schemas.active-endpoints.com/sample/customer/2006/04/Customer.xsd"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
+
+ <wsdl:types>
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:import
+ namespace="http://schemas.active-endpoints.com/sample/customer/2006/04/Customer.xsd"
+ schemaLocation="Customer.xsd" />
+ </xs:schema>
+ </wsdl:types>
+
+ <wsdl:message name="SendOrderConfirmationRequest">
+ <wsdl:part name="Document" element="cust:orderConfirmation" />
+ </wsdl:message>
+
+ <wsdl:message name="SendOrderConfirmationResponse">
+ <wsdl:part name="Document" element="cust:orderConfirmationAck" />
+ </wsdl:message>
+
+ <wsdl:portType name="CustomerPortType">
+ <wsdl:operation name="SendOrderConfirmation">
+ <wsdl:input message="tns:SendOrderConfirmationRequest" />
+ <wsdl:output message="tns:SendOrderConfirmationResponse" />
+ </wsdl:operation>
+
+ </wsdl:portType>
+
+ <wsdl:binding name="CustomerSoap" type="tns:CustomerPortType">
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="SendOrderConfirmation">
+ <soap:operation
+ soapAction="http://docs.active-endpoints.com/activebpel/sample/wsdl/customer/2006/04/Customer.wsdl/SendOrderConfirmation"
+ style="document" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="CustomerService">
+ <wsdl:port name="CustomerSoap" binding="tns:CustomerSoap">
+ <soap:address
+ location="http://localhost:18080/active-bpel/services/ABI_Customer" />
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.xsd
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.xsd (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.xsd 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,20 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+
+<xs:schema elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ targetNamespace="http://schemas.active-endpoints.com/sample/customer/2006/04/Customer.xsd"
+ xmlns:tns="http://schemas.active-endpoints.com/sample/customer/2006/04/Customer.xsd"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+ <xs:element name="orderConfirmation" type="tns:OrderConfirmation" />
+ <xs:element name="orderConfirmationAck" type="xs:boolean" />
+
+ <xs:complexType name="OrderConfirmation">
+ <xs:sequence>
+ <xs:element name="customerNumber" type="xs:string" />
+ <xs:element name="poNumber" type="xs:string" />
+ <xs:element name="orderNumber" type="xs:string" />
+ </xs:sequence>
+ </xs:complexType>
+
+</xs:schema>
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Customer.xsd
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/CustomerOrder.xsd
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/CustomerOrder.xsd (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/CustomerOrder.xsd 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ targetNamespace="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd"
+ xmlns:tns="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd"
+ xmlns:std="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+ <xs:import
+ namespace="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd"
+ schemaLocation="StandardTypes.xsd" />
+
+ <xs:element name="customerOrder" type="tns:CustomerOrder" />
+ <xs:element name="header" type="tns:OrderHeader" />
+ <xs:element name="items" type="tns:OrderItems" />
+ <xs:element name="item" type="tns:Item" />
+ <xs:element name="customerOrderAck" type="xs:boolean" />
+ <xs:element name="orderInquiry" type="tns:OrderInquiry" />
+ <xs:element name="customerNumber" type="xs:string" />
+ <xs:element name="poNumber" type="xs:string" />
+ <xs:element name="orderStatus" type="xs:string" />
+ <xs:element name="cancelOrder" type="tns:CancelOrder" />
+
+ <xs:complexType name="CustomerOrder">
+ <xs:sequence>
+ <xs:element ref="tns:header" />
+ <xs:element ref="tns:items" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="OrderHeader">
+ <xs:sequence>
+ <xs:element ref="tns:customerNumber" />
+ <xs:element ref="tns:poNumber" />
+ <xs:element name="orderDate" type="xs:date" />
+ <xs:element name="orderTotal" type="std:Amount" />
+ <xs:element name="billTo" type="std:Party" />
+ <xs:element name="shipTo" type="std:Party" />
+ <xs:element name="billTerms" type="xs:string" minOccurs="0"
+ maxOccurs="1" />
+ <xs:element name="shipTerms" type="xs:string" minOccurs="0"
+ maxOccurs="1" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="OrderItems">
+ <xs:sequence>
+ <xs:element ref="tns:item" maxOccurs="unbounded"
+ minOccurs="1" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="Item">
+ <xs:sequence>
+ <xs:element name="partNumber" type="std:SKU" />
+ <xs:element name="description" type="xs:string" />
+ <xs:element name="quantity" type="xs:unsignedShort" />
+ <xs:element name="price" type="std:Amount" />
+ <xs:element name="extensionAmount" type="std:Amount" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="OrderInquiry">
+ <xs:sequence>
+ <xs:element ref="tns:customerNumber" />
+ <xs:element ref="tns:poNumber" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="CancelOrder">
+ <xs:sequence>
+ <xs:element ref="tns:orderInquiry" />
+ </xs:sequence>
+ </xs:complexType>
+
+
+
+</xs:schema>
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/CustomerOrder.xsd
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Retailer.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Retailer.wsdl (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Retailer.wsdl 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions name="Retailer"
+ targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/retailer/2006/04/Retailer.wsdl"
+ xmlns:tns="http://docs.active-endpoints.com/activebpel/sample/wsdl/retailer/2006/04/Retailer.wsdl"
+ xmlns:cust="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd"
+ xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+
+ <wsdl:types>
+ <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:import
+ namespace="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd"
+ schemaLocation="CustomerOrder.xsd" />
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="SubmitOrderRequest">
+ <wsdl:part name="Document" element="cust:customerOrder" />
+ </wsdl:message>
+
+ <wsdl:message name="SubmitOrderResponse">
+ <wsdl:part name="Document" element="cust:customerOrderAck" />
+ </wsdl:message>
+
+ <wsdl:portType name="RetailerPortType">
+ <wsdl:operation name="SubmitOrder">
+ <wsdl:input message="tns:SubmitOrderRequest" />
+ <wsdl:output message="tns:SubmitOrderResponse" />
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="RetailerBinding" type="tns:RetailerPortType">
+ <soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="SubmitOrder">
+ <soap:operation
+ soapAction="http://docs.active-endpoints.com/activebpel/sample/wsdl/retailer/2006/04/Retailer.wsdl/SubmitOrder" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="RetailerService">
+ <wsdl:port name="RetailerPort" binding="tns:RetailerBinding">
+ <soap:address location="http://localhost:18080/active-bpel/services/Retailer" />
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/RetailerCallback.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/RetailerCallback.wsdl (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/RetailerCallback.wsdl 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,257 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions name="OrderManagerPortTypeService" targetNamespace="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"
+ xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://ordermanagement.activebpel.com/jaws"
+ xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"
+ xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <types>
+
+ <schema elementFormDefault="qualified" targetNamespace="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"
+ xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://ordermanagement.activebpel.com/jaws"
+ xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:tns="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <import namespace="http://ordermanagement.activebpel.com/jaws"/>
+
+ <complexType name="CancelOrder">
+
+ <sequence>
+
+ <element name="orderInquiry" nillable="true" type="ns2:OrderInquiry"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="CustomerOrder">
+
+ <sequence>
+
+ <element name="header" nillable="true" type="ns2:OrderHeader"/>
+
+ <element maxOccurs="unbounded" minOccurs="0" name="items" nillable="true" type="ns2:Item"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="SalesOrderFault">
+
+ <sequence>
+
+ <element name="reason" nillable="true" type="string"/>
+
+ </sequence>
+
+ </complexType>
+
+
+ <complexType name="SalesOrderNotification">
+
+ <sequence>
+
+ <element ref="tns:orderNumber"/>
+
+ </sequence>
+
+ </complexType>
+
+
+ <element name="cancelOrder" type="tns:CancelOrder"/>
+
+ <element name="cancelOrderResponse" type="boolean"/>
+
+ <element name="customerOrder" type="tns:CustomerOrder"/>
+
+ <element name="SalesOrderFault" type="tns:SalesOrderFault"/>
+
+ <element name="customerOrderResponse" type="string"/>
+
+ <element name="salesOrderNotification" type="tns:SalesOrderNotification"/>
+
+ <element name="salesOrderNotificationAck" type="boolean"/>
+
+ <element name="orderNumber" type="string"/>
+
+ </schema>
+
+ <schema elementFormDefault="qualified" targetNamespace="http://ordermanagement.activebpel.com/jaws"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:ns1="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"
+ xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:tns="http://ordermanagement.activebpel.com/jaws"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <import namespace="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager"/>
+
+ <complexType name="Address">
+
+ <sequence>
+
+ <element name="city" nillable="true" type="string"/>
+
+ <element name="state" nillable="true" type="string"/>
+
+ <element name="street1" nillable="true" type="string"/>
+
+ <element name="street2" nillable="true" type="string"/>
+
+ <element name="zip" nillable="true" type="string"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="Contact">
+
+ <sequence>
+
+ <element name="email" nillable="true" type="string"/>
+
+ <element name="fax" nillable="true" type="string"/>
+
+ <element name="name" nillable="true" type="string"/>
+
+ <element name="phone" nillable="true" type="string"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="Item">
+
+ <sequence>
+
+ <element name="description" nillable="true" type="string"/>
+
+ <element name="extensionAmount" nillable="true" type="decimal"/>
+
+ <element name="partNumber" nillable="true" type="string"/>
+
+ <element name="price" nillable="true" type="decimal"/>
+
+ <element name="quantity" type="int"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="OrderHeader">
+
+ <sequence>
+
+ <element name="billTerms" nillable="true" type="string"/>
+
+ <element name="billTo" nillable="true" type="tns:Party"/>
+
+ <element name="customerNumber" nillable="true" type="string"/>
+
+ <element name="orderDate" nillable="true" type="dateTime"/>
+
+ <element name="orderTotal" nillable="true" type="decimal"/>
+
+ <element name="poNumber" nillable="true" type="string"/>
+
+ <element name="shipTerms" nillable="true" type="string"/>
+
+ <element name="shipTo" nillable="true" type="tns:Party"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="OrderInquiry">
+
+ <sequence>
+
+ <element name="customerNumber" nillable="true" type="string"/>
+
+ <element name="poNumber" nillable="true" type="string"/>
+
+ </sequence>
+
+ </complexType>
+
+ <complexType name="Party">
+
+ <sequence>
+
+ <element name="address" nillable="true" type="tns:Address"/>
+
+ <element name="company" nillable="true" type="string"/>
+
+ <element name="contact" nillable="true" type="tns:Contact"/>
+
+ </sequence>
+
+ </complexType>
+
+ </schema>
+
+ </types>
+
+ <message name="SendSalesOrderNotificationResponse">
+
+ <part element="tns:salesOrderNotificationAck" name="Document"/>
+
+ </message>
+
+ <message name="SendSalesOrderNotificationRequest">
+
+ <part element="tns:salesOrderNotification" name="Document"/>
+
+ </message>
+
+ <portType name="RetailerCallbackPortType">
+
+ <operation name="SendSalesOrderNotification">
+
+ <input message="tns:SendSalesOrderNotificationRequest"/>
+
+ <output message="tns:SendSalesOrderNotificationResponse"/>
+
+ </operation>
+
+ </portType>
+
+ <binding name="RetailerCallbackBinding" type="tns:RetailerCallbackPortType">
+
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
+
+ <operation name="SendSalesOrderNotification">
+
+ <soap:operation soapAction="" style="document" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
+
+ <input>
+
+ <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
+
+ </input>
+
+ <output>
+
+ <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
+
+ </output>
+
+ </operation>
+
+ </binding>
+
+ <service name="RetailerCallback">
+
+ <port binding="tns:RetailerCallbackBinding" name="RetailerCallbackPort">
+
+ <soap:address location="http://localhost:18080/active-bpel/services/RetailerCallback"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
+
+ </port>
+
+ </service>
+
+</definitions>
+
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Shipping.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Shipping.wsdl (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/Shipping.wsdl 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://org.jboss.esb/quickstarts/bpel/ABI_Shipping"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+ name="ShippingPortTypeService"
+ targetNamespace="http://org.jboss.esb/quickstarts/bpel/ABI_Shipping">
+ <types>
+ <schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ elementFormDefault="qualified"
+ targetNamespace="http://org.jboss.esb/quickstarts/bpel/ABI_Shipping"
+ xmlns:tns="http://org.jboss.esb/quickstarts/bpel/ABI_Shipping">
+ <complexType name="ShippingRequest">
+ <sequence>
+ <element name="customerNumber" nillable="true"
+ type="string" />
+ <element name="orderNumber" nillable="true"
+ type="string" />
+ <element name="poNumber" nillable="true"
+ type="string" />
+ </sequence>
+ </complexType>
+ <complexType name="ShippingResponse">
+ <sequence>
+ <element name="orderShipped" type="boolean" />
+ </sequence>
+ </complexType>
+ <element name="shippingRequest" type="tns:ShippingRequest" />
+ <element name="shippingRequestResponse"
+ type="tns:ShippingResponse" />
+ </schema>
+ </types>
+ <message name="ShippingPortType_shippingRequest">
+ <part element="tns:shippingRequest" name="parameters" />
+ </message>
+ <message name="ShippingPortType_shippingRequestResponse">
+ <part element="tns:shippingRequestResponse" name="result" />
+ </message>
+ <portType name="ShippingPortType">
+ <operation name="shippingRequest">
+ <input message="tns:ShippingPortType_shippingRequest" />
+ <output
+ message="tns:ShippingPortType_shippingRequestResponse" />
+ </operation>
+ </portType>
+ <binding name="ShippingPortTypeBinding"
+ type="tns:ShippingPortType">
+ <soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="shippingRequest">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding>
+ <service name="ShippingPortTypeService">
+ <port binding="tns:ShippingPortTypeBinding"
+ name="ShippingPortTypePort">
+ <soap:address location="http://localhost:8866" />
+ </port>
+ </service>
+
+ <plnk:partnerLinkType name="ShippingPLT">
+ <plnk:role name="Shipper" portType="tns:ShippingPortType" />
+ </plnk:partnerLinkType>
+
+</definitions>
\ No newline at end of file
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBeanUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBeanUnitTest.java (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBeanUnitTest.java 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,145 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.services.soapui;
+
+import junit.framework.TestCase;
+
+import java.io.*;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.math.BigDecimal;
+
+import org.xml.sax.SAXException;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SoapUIClientServiceMBeanUnitTest extends TestCase {
+
+ private static final String WSDL_LOCATAION = "src/test/java/org/jboss/soa/esb/services/soapui";
+
+ public void test_no_collections() throws IOException, SAXException {
+ File wsdlFile = new File(WSDL_LOCATAION + "/RetailerCallback.wsdl");
+ SoapUIClientService mbean = new SoapUIClientService();
+ Map params = new HashMap();
+
+ params.put("salesOrderNotification", new OrderNotification());
+ String message = mbean.buildRequest(wsdlFile.toURI().toString(), "SendSalesOrderNotification", params);
+ assertTrue("Generated SOAP message not as expected. See expected_01.xml. Generated message: \n" + message, compareCharStreams(getClass().getResourceAsStream("expected_01.xml"), new ByteArrayInputStream(message.getBytes())));
+ assertEquals("http://localhost:18080/active-bpel/services/RetailerCallback", mbean.getEndpoint(wsdlFile.toURI().toString()));
+ }
+
+ public void test_has_collections() throws IOException, SAXException {
+ File wsdlFile = new File(WSDL_LOCATAION + "/BPELRetailer.wsdl");
+ SoapUIClientService mbean = new SoapUIClientService();
+ Map params = new HashMap();
+ CustomerOrder1 order1 = new CustomerOrder1();
+ CustomerOrder2 order2 = new CustomerOrder2();
+ List<OrderItem> items1 = new ArrayList<OrderItem>();
+ OrderItem[] items2 = new OrderItem[4];
+
+ addOrderItems(items1);
+ order1.items = items1;
+ items1.toArray(items2);
+ order2.items = items2;
+
+ params.put("customerOrder", order1);
+ String message = mbean.buildRequest(wsdlFile.toURI().toString(), "SubmitOrder", params);
+ assertTrue("Generated SOAP message not as expected. See expected_02.xml. Generated message: \n" + message, compareCharStreams(getClass().getResourceAsStream("expected_02.xml"), new ByteArrayInputStream(message.getBytes())));
+
+ items1.remove(0);items1.remove(0);items1.remove(0);
+ message = mbean.buildRequest(wsdlFile.toURI().toString(), "SubmitOrder", params);
+ assertTrue("Generated SOAP message not as expected. See expected_03.xml. Generated message: \n" + message, compareCharStreams(getClass().getResourceAsStream("expected_03.xml"), new ByteArrayInputStream(message.getBytes())));
+
+ params.put("customerOrder", order2);
+ message = mbean.buildRequest(wsdlFile.toURI().toString(), "SubmitOrder", params);
+ assertTrue("Generated SOAP message not as expected. See expected_02.xml. Generated message: \n" + message, compareCharStreams(getClass().getResourceAsStream("expected_02.xml"), new ByteArrayInputStream(message.getBytes())));
+
+ items2 = new OrderItem[] {new OrderItem(4, "item4", 4, new BigDecimal(4.00), 4)};
+ order2.items = items2;
+ params.put("customerOrder", order2);
+ message = mbean.buildRequest(wsdlFile.toURI().toString(), "SubmitOrder", params);
+ assertTrue("Generated SOAP message not as expected. See expected_03.xml. Generated message: \n" + message, compareCharStreams(getClass().getResourceAsStream("expected_03.xml"), new ByteArrayInputStream(message.getBytes())));
+ }
+
+ private void addOrderItems(List<OrderItem> items) {
+ items.add(new OrderItem(1, "item1", 1, new BigDecimal(1.00), 1));
+ items.add(new OrderItem(2, "item2", 2, new BigDecimal(2.00), 2));
+ items.add(new OrderItem(3, "item3", 3, new BigDecimal(3.00), 3));
+ items.add(new OrderItem(4, "item4", 4, new BigDecimal(4.00), 4));
+ }
+
+ private class OrderNotification {
+ public String orderNumber = "12345";
+ }
+
+ private class CustomerOrder1 {
+ public List<OrderItem> items;
+ }
+
+ private class CustomerOrder2 {
+ public OrderItem[] items;
+ }
+
+ private class OrderItem {
+ public long partNumber;
+ public String description;
+ public int quantity;
+ public BigDecimal price;
+ public int extensionAmount;
+
+ public OrderItem(long partNumber, String description, int quantity, BigDecimal price, int extensionAmount) {
+ this.partNumber = partNumber;
+ this.description = description;
+ this.quantity = quantity;
+ this.price = price;
+ this.extensionAmount = extensionAmount;
+ }
+ }
+
+ // Lifted from milyn commons
+ public static boolean compareCharStreams(InputStream s1, InputStream s2) {
+ StringBuffer s1Buf, s2Buf;
+
+ try {
+ s1Buf = trimLines(s1);
+ s2Buf = trimLines(s2);
+
+ return s1Buf.toString().equals(s2Buf.toString());
+ } catch (IOException e) {
+ // fail the comparison
+ }
+
+ return false;
+ }
+ public static StringBuffer trimLines(InputStream charStream) throws IOException {
+ StringBuffer stringBuf = new StringBuffer();
+ BufferedReader reader = new BufferedReader(new InputStreamReader(charStream));
+ String line;
+
+ while((line = reader.readLine()) != null) {
+ stringBuf.append(line.trim());
+ }
+
+ return stringBuf;
+ }
+}
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/SoapUIClientServiceMBeanUnitTest.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/StandardTypes.xsd
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/StandardTypes.xsd (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/StandardTypes.xsd 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ targetNamespace="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd"
+ xmlns:tns="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+ <xs:complexType name="Party">
+ <xs:sequence>
+ <xs:element name="company" type="xs:string" />
+ <xs:element name="contact" type="tns:Contact" />
+ <xs:element name="address" type="tns:Address" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="Contact">
+ <xs:sequence>
+ <xs:element name="name" type="xs:string" />
+ <xs:element name="phone" type="xs:string" />
+ <xs:element name="fax" type="xs:string" />
+ <xs:element name="email" type="xs:string" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="Address">
+ <xs:sequence>
+ <xs:element name="street1" type="xs:string" />
+ <xs:element name="street2" type="xs:string" minOccurs="0"
+ maxOccurs="1" />
+ <xs:element name="city" type="xs:string" />
+ <xs:element name="state" type="xs:string" />
+ <xs:element name="zip" type="xs:string" />
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:simpleType name="SKU">
+ <xs:restriction base="xs:string">
+ <xs:length value="8" />
+ <xs:pattern value="[A-Z]{3}[0-9]{5}" />
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="Amount">
+ <xs:restriction base="xs:decimal">
+ <xs:totalDigits value="8" />
+ <xs:fractionDigits value="2" />
+ <xs:minExclusive value="0" />
+ </xs:restriction>
+ </xs:simpleType>
+
+</xs:schema>
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/StandardTypes.xsd
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_01.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_01.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_01.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,8 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:abi="http://org.jboss.esb/quickstarts/bpel/ABI_OrderManager">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <abi:salesOrderNotification>
+ <abi:orderNumber>12345</abi:orderNumber>
+ </abi:salesOrderNotification>
+ </soapenv:Body>
+</soapenv:Envelope>
\ No newline at end of file
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_01.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_02.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_02.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_02.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,79 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cus="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd" xmlns:stan="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <cus:customerOrder>
+ <cus:header>
+ <cus:customerNumber></cus:customerNumber>
+ <cus:poNumber></cus:poNumber>
+ <cus:orderDate></cus:orderDate>
+ <cus:orderTotal></cus:orderTotal>
+ <cus:billTo>
+ <stan:company></stan:company>
+ <stan:contact>
+ <stan:name></stan:name>
+ <stan:phone></stan:phone>
+ <stan:fax></stan:fax>
+ <stan:email></stan:email>
+ </stan:contact>
+ <stan:address>
+ <stan:street1></stan:street1>
+ <!--Optional:-->
+ <stan:street2></stan:street2>
+ <stan:city></stan:city>
+ <stan:state></stan:state>
+ <stan:zip></stan:zip>
+ </stan:address>
+ </cus:billTo>
+ <cus:shipTo>
+ <stan:company></stan:company>
+ <stan:contact>
+ <stan:name></stan:name>
+ <stan:phone></stan:phone>
+ <stan:fax></stan:fax>
+ <stan:email></stan:email>
+ </stan:contact>
+ <stan:address>
+ <stan:street1></stan:street1>
+ <!--Optional:-->
+ <stan:street2></stan:street2>
+ <stan:city></stan:city>
+ <stan:state></stan:state>
+ <stan:zip></stan:zip>
+ </stan:address>
+ </cus:shipTo>
+ <!--Optional:-->
+ <cus:billTerms></cus:billTerms>
+ <!--Optional:-->
+ <cus:shipTerms></cus:shipTerms>
+ </cus:header>
+ <cus:items>
+ <!--1 or more repetitions:-->
+ <cus:item>
+ <cus:partNumber>1</cus:partNumber>
+ <cus:description>item1</cus:description>
+ <cus:quantity>1</cus:quantity>
+ <cus:price>1</cus:price>
+ <cus:extensionAmount>1</cus:extensionAmount>
+ </cus:item>
+ <cus:item>
+ <cus:partNumber>2</cus:partNumber>
+ <cus:description>item2</cus:description>
+ <cus:quantity>2</cus:quantity>
+ <cus:price>2</cus:price>
+ <cus:extensionAmount>2</cus:extensionAmount>
+ </cus:item><cus:item>
+ <cus:partNumber>3</cus:partNumber>
+ <cus:description>item3</cus:description>
+ <cus:quantity>3</cus:quantity>
+ <cus:price>3</cus:price>
+ <cus:extensionAmount>3</cus:extensionAmount>
+ </cus:item><cus:item>
+ <cus:partNumber>4</cus:partNumber>
+ <cus:description>item4</cus:description>
+ <cus:quantity>4</cus:quantity>
+ <cus:price>4</cus:price>
+ <cus:extensionAmount>4</cus:extensionAmount>
+ </cus:item></cus:items>
+ </cus:customerOrder>
+ </soapenv:Body>
+</soapenv:Envelope>
\ No newline at end of file
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_02.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_03.xml
===================================================================
--- labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_03.xml (rev 0)
+++ labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_03.xml 2007-05-18 16:42:43 UTC (rev 11957)
@@ -0,0 +1,61 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cus="http://schemas.active-endpoints.com/sample/customerorder/2006/04/CustomerOrder.xsd" xmlns:stan="http://schemas.active-endpoints.com/sample/standardtypes/2006/04/StandardTypes.xsd">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <cus:customerOrder>
+ <cus:header>
+ <cus:customerNumber></cus:customerNumber>
+ <cus:poNumber></cus:poNumber>
+ <cus:orderDate></cus:orderDate>
+ <cus:orderTotal></cus:orderTotal>
+ <cus:billTo>
+ <stan:company></stan:company>
+ <stan:contact>
+ <stan:name></stan:name>
+ <stan:phone></stan:phone>
+ <stan:fax></stan:fax>
+ <stan:email></stan:email>
+ </stan:contact>
+ <stan:address>
+ <stan:street1></stan:street1>
+ <!--Optional:-->
+ <stan:street2></stan:street2>
+ <stan:city></stan:city>
+ <stan:state></stan:state>
+ <stan:zip></stan:zip>
+ </stan:address>
+ </cus:billTo>
+ <cus:shipTo>
+ <stan:company></stan:company>
+ <stan:contact>
+ <stan:name></stan:name>
+ <stan:phone></stan:phone>
+ <stan:fax></stan:fax>
+ <stan:email></stan:email>
+ </stan:contact>
+ <stan:address>
+ <stan:street1></stan:street1>
+ <!--Optional:-->
+ <stan:street2></stan:street2>
+ <stan:city></stan:city>
+ <stan:state></stan:state>
+ <stan:zip></stan:zip>
+ </stan:address>
+ </cus:shipTo>
+ <!--Optional:-->
+ <cus:billTerms></cus:billTerms>
+ <!--Optional:-->
+ <cus:shipTerms></cus:shipTerms>
+ </cus:header>
+ <cus:items>
+ <!--1 or more repetitions:-->
+ <cus:item>
+ <cus:partNumber>4</cus:partNumber>
+ <cus:description>item4</cus:description>
+ <cus:quantity>4</cus:quantity>
+ <cus:price>4</cus:price>
+ <cus:extensionAmount>4</cus:extensionAmount>
+ </cus:item>
+ </cus:items>
+ </cus:customerOrder>
+ </soapenv:Body>
+</soapenv:Envelope>
Property changes on: labs/jbossesb/trunk/product/services/soapui-client/src/test/java/org/jboss/soa/esb/services/soapui/expected_03.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
More information about the jboss-svn-commits
mailing list