You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by pr...@apache.org on 2005/12/16 17:08:02 UTC

svn commit: r357176 - in /webservices/axis/trunk/c/tests/auto_build/testcases: ./ client/cpp/ output/ tests/ wsdls/

Author: prestonf
Date: Fri Dec 16 08:07:51 2005
New Revision: 357176

URL: http://svn.apache.org/viewcvs?rev=357176&view=rev
Log:
All files for a UT regression test to ensure that the following does not happen:-
/* then serialize elements if any*/
pSZ->serializeCmplxArray(param->MyClass_Ref,
			 (void*) Axis_Serialize_MyClass,
			 (void*) Axis_Delete_MyClass,
			 (void*) Axis_GetSize_MyClass,
			 "MyClass_Ref", NULL);

Should now be:-
/* then serialize elements if any*/
pSZ->serializeCmplxArray(param->MyClass_Ref,
			 (void*) Axis_Serialize_MyClass,
			 (void*) Axis_Delete_MyClass,
			 (void*) Axis_GetSize_MyClass,
			 "MyClass", NULL);

Added:
    webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/ReplicaClient.cpp
    webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.expected
    webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.out
    webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaResponse.expected
    webservices/axis/trunk/c/tests/auto_build/testcases/tests/Replica.xml
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestService.wsdl
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestServiceReplica.xsd
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.tst.xsd
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.xsd
Modified:
    webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list

Added: webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/ReplicaClient.cpp
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/ReplicaClient.cpp?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/ReplicaClient.cpp (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/ReplicaClient.cpp Fri Dec 16 08:07:51 2005
@@ -0,0 +1,106 @@
+// Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// 
+//        http://www.apache.org/licenses/LICENSE-2.0
+// 
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include <iostream>
+#include "IAllTypesTestService.hpp"
+
+int main( int argc, char * argv[])
+{
+	bool	bSuccess = false;
+	int		iRetryIterationCount = 3;
+
+	do
+	{
+		try
+		{
+			const char *	pszURL = "http://localhost:9090/Replica/services/ReplicaImpl";
+
+			pszURL = argv[1];
+
+			IAllTypesTestService *			pWS = new IAllTypesTestService( pszURL, APTHTTP1_1);
+			IAllTypesTestServiceReplica *	pServceReplica = new IAllTypesTestServiceReplica();
+			MyClass_Array *					pMyClassArray = new MyClass_Array();
+			int								iMyClassSize = 1;
+			MyClass *						pMyClass = new MyClass[iMyClassSize];
+			xsd__NMTOKEN					myId = "1612";
+			xsd__string						myName = "Tester";
+			xsd__base64Binary *				pMyValues = new xsd__base64Binary();
+			int								iMyValuesDataSize = 10;
+			xsd__unsignedByte *				pMyValuesData = new xsd__unsignedByte[iMyValuesDataSize];
+
+			for( int iCount = 0; iCount < iMyValuesDataSize; iCount++)
+			{
+				*(pMyValuesData + iCount) = (xsd__unsignedByte) (10 * iCount);
+			}
+
+			pMyValues->set( pMyValuesData, iMyValuesDataSize);
+
+			pMyClass->setid( myId);
+			pMyClass->setName( myName);
+			pMyClass->setValues( pMyValues);
+
+			pMyClassArray->set( &pMyClass, iMyClassSize);
+			pServceReplica->setMyClass_Ref( pMyClassArray);
+
+			pWS->miReplica( pServceReplica);
+
+			delete [] pMyClass;
+			delete pMyValues;
+			delete [] pMyValuesData;
+			delete pMyClassArray;
+			delete pServceReplica;
+			delete pWS;
+
+			cout << "Test completed without fault" << endl;
+
+			bSuccess = true;
+		}
+		catch( AxisException& e)
+		{
+			bool bSilent = false;
+
+			if( e.getExceptionCode() == CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED)
+			{
+				if( iRetryIterationCount > 1)
+				{
+					bSilent = true;
+				}
+			}
+			else
+			{
+				iRetryIterationCount = 0;
+			}
+
+			if( !bSilent)
+			{
+				cout << "Exception : " << e.what() << endl;
+			}
+		}
+		catch( exception& e)
+		{
+			cout << "Unknown exception has occured : " << e.what() << endl;
+		}
+		catch(...)
+		{
+			cout << "Unknown exception has occured" << endl;
+		}
+
+		iRetryIterationCount--;
+	} while( iRetryIterationCount > 0 && !bSuccess);
+
+	cout << "---------------------- TEST COMPLETE -----------------------------" << endl;
+
+	return 0;
+}
\ No newline at end of file

Added: webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.expected
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.expected?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.expected (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.expected Fri Dec 16 08:07:51 2005
@@ -0,0 +1,17 @@
+POST /Replica/services/ReplicaImpl HTTP/1.1
+Host: 9.20.98.177:9090
+Content-Type: text/xml; charset=UTF-8
+SOAPAction: ""
+Content-Length: 484
+
+<?xml version='1.0' encoding='utf-8' ?>
+<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+<SOAP-ENV:Body>
+<ns1:miReplica xmlns:ns1="IAllTypesTestService">
+<iReplica xmlns:ns2="IAllTypesTestServiceReplica"><MyClass id="1612"><Name>Tester</Name>
+<Values>AAoUHigyPEZQWg==</Values>
+</MyClass></iReplica>
+</ns1:miReplica>
+</SOAP-ENV:Body>
+</SOAP-ENV:Envelope>
+

Added: webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.out
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.out?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.out (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaRequest.out Fri Dec 16 08:07:51 2005
@@ -0,0 +1,2 @@
+Test completed without fault
+---------------------- TEST COMPLETE -----------------------------

Added: webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaResponse.expected
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaResponse.expected?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaResponse.expected (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/output/ReplicaResponse.expected Fri Dec 16 08:07:51 2005
@@ -0,0 +1,15 @@
+HTTP/1.1 200 OK
+Server: WebSphere Application Server/5.1
+Content-Type: text/xml; charset=utf-8
+Content-Language: en-GB
+Transfer-Encoding: chunked
+
+C9
+<?xml version="1.0" encoding="UTF-8"?>
+<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
+<SOAP-ENV:Body>
+<miReplicaResponse xmlns=""/>
+</SOAP-ENV:Body>
+</SOAP-ENV:Envelope>
+0
+

Added: webservices/axis/trunk/c/tests/auto_build/testcases/tests/Replica.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/tests/Replica.xml?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/tests/Replica.xml (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/tests/Replica.xml Fri Dec 16 08:07:51 2005
@@ -0,0 +1,19 @@
+<test>
+    <name>Replica</name>
+    <description>Replica</description>
+    <clientLang>cpp</clientLang>
+    <clientCode>ReplicaClient.cpp</clientCode>
+    <wsdl>Replica_IAllTypesTestService.wsdl</wsdl>
+    <expected>
+        <output>
+            ReplicaRequest.out
+        </output>
+        <request>
+            ReplicaRequest.expected
+        </request> 
+        <serverResponse>
+            ReplicaResponse.expected
+        </serverResponse>
+    </expected>
+	<endpoint>http://localhost:80/axis/ReplicaTest</endpoint>
+</test>

Modified: webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list?rev=357176&r1=357175&r2=357176&view=diff
==============================================================================
Binary files - no diff available.

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestService.wsdl
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestService.wsdl?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestService.wsdl (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestService.wsdl Fri Dec 16 08:07:51 2005
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<definitions targetNamespace="IAllTypesTestService"
+                       xmlns="http://schemas.xmlsoap.org/wsdl/"
+                   xmlns:ns1="Infra"
+                   xmlns:ns2="Infra.tst"
+                   xmlns:ns3="IAllTypesTestServiceReplica"
+                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+                   xmlns:tns="IAllTypesTestService"
+                   xmlns:wsi="http://ws-i.org/schemas/conformanceClaim/"
+                   xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <types>
+  <xsd:schema targetNamespace="IAllTypesTestService">
+   <xsd:import namespace="Infra.tst" schemaLocation="Replica_Infra.tst.xsd"/>
+   <xsd:import namespace="Infra" schemaLocation="Replica_Infra.xsd"/>
+   <xsd:import namespace="IAllTypesTestServiceReplica" schemaLocation="Replica_IAllTypesTestServiceReplica.xsd"/>
+   <xsd:element name="miReplica">
+    <xsd:complexType>
+     <xsd:sequence>
+      <xsd:element maxOccurs="1" minOccurs="1" name="iReplica" nillable="true" type="ns3:IAllTypesTestServiceReplica"/>
+     </xsd:sequence>
+    </xsd:complexType>
+   </xsd:element>
+   <xsd:element name="miReplicaResponse">
+    <xsd:complexType/>
+   </xsd:element>
+  </xsd:schema>
+ </types>
+ <message name="miReplicaFault">
+  <part element="ns1:ServiceException" name="error"/>
+ </message>
+ <message name="miReplicaInput">
+  <part element="tns:miReplica" name="parameters"/>
+ </message>
+ <message name="miReplicaOutput">
+  <part element="tns:miReplicaResponse" name="parameters"/>
+ </message>
+ <portType name="IAllTypesTestService">
+  <operation name="miReplica">
+   <input message="tns:miReplicaInput"/>
+   <output message="tns:miReplicaOutput"/>
+   <fault message="tns:miReplicaFault" name="miReplicaFault"/>
+  </operation>
+ </portType>
+ <binding name="IAllTypesTestServiceBinding" type="tns:IAllTypesTestService">
+  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+  <operation name="miReplica">
+   <soap:operation soapAction="" style="document"/>
+   <input>
+    <soap:body use="literal"/>
+   </input>
+   <output>
+    <soap:body use="literal"/>
+   </output>
+   <fault name="miReplicaFault">
+    <soap:fault name="miReplicaFault" use="literal"/>
+   </fault>
+  </operation>
+ </binding>
+ <service name="myService">
+ 	<port name="myPort" binding="tns:IAllTypesTestServiceBinding">
+ 		<soap:address location="http://tempuri.org/" />
+ 	</port>
+ </service>
+</definitions>

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestServiceReplica.xsd
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestServiceReplica.xsd?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestServiceReplica.xsd (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_IAllTypesTestServiceReplica.xsd Fri Dec 16 08:07:51 2005
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema    id="IAllTypesTestServiceReplica"
+           xmlns="IAllTypesTestServiceReplica"
+ targetNamespace="IAllTypesTestServiceReplica"
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xmlns:ds="plmdataset-properties"
+ attributeFormDefault="qualified"
+   elementFormDefault="qualified">
+	<xs:element name="IAllTypesTestServiceReplica" type="IAllTypesTestServiceReplica">
+		<xs:key name="MyClass">
+			<xs:selector xpath="MyClass" />
+			<xs:field xpath="@id" />
+		</xs:key>
+	</xs:element>
+	<xs:complexType name="IAllTypesTestServiceReplica">
+		<xs:sequence maxOccurs="unbounded">
+			<xs:element name="MyClass" type="MyClass" minOccurs="0" maxOccurs="unbounded" form="unqualified"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:complexType name="MyClass" mixed="true">
+		<xs:sequence>
+			<xs:element name="Name" form="unqualified" nillable="true" minOccurs="0">
+				<xs:simpleType>
+					<xs:restriction base="xs:string">
+						<xs:maxLength value="20"/>
+					</xs:restriction>
+				</xs:simpleType>
+			</xs:element>
+			<xs:element name="Values" form="unqualified" nillable="true" minOccurs="0">
+				<xs:simpleType>
+					<xs:restriction base="xs:base64Binary">
+						<xs:maxLength value="3"/>
+					</xs:restriction>
+				</xs:simpleType>
+			</xs:element>
+		</xs:sequence>
+		<xs:attribute name="id" type="xs:NMTOKEN" use="optional" form="unqualified"/>
+	</xs:complexType>
+</xs:schema>

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.tst.xsd
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.tst.xsd?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.tst.xsd (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.tst.xsd Fri Dec 16 08:07:51 2005
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<xsd:schema targetNamespace="Infra.tst" xmlns:ns1="Infra" xmlns:ns2="IAllTypesTestServiceReplica" xmlns:tns="Infra.tst" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:import namespace="Infra" schemaLocation="Replica_Infra.xsd"/>
+ <xsd:import namespace="IAllTypesTestServiceReplica" schemaLocation="Replica_IAllTypesTestServiceReplica.xsd"/>
+ <xsd:complexType name="BeanBArrayType">
+  <xsd:sequence>
+   <xsd:element form="qualified" maxOccurs="unbounded" name="Item" nillable="true" type="tns:BeanB"/>
+  </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="SampleBeanArrayType">
+  <xsd:sequence>
+   <xsd:element form="qualified" maxOccurs="unbounded" name="Item" nillable="true" type="tns:SampleBean"/>
+  </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BeanA">
+  <xsd:annotation>
+   <xsd:documentation>A bean graph object</xsd:documentation>
+  </xsd:annotation>
+  <xsd:sequence>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="B" nillable="true" type="tns:BeanB">
+    <xsd:annotation>
+     <xsd:documentation>a reference to another node</xsd:documentation>
+    </xsd:annotation>
+   </xsd:element>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="BArray" nillable="true" type="tns:BeanBArrayType">
+    <xsd:annotation>
+     <xsd:documentation>a reference to an array of other nodes</xsd:documentation>
+    </xsd:annotation>
+   </xsd:element>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="StringValue" nillable="true" type="xsd:string">
+    <xsd:annotation>
+     <xsd:documentation>the string identifying the node</xsd:documentation>
+    </xsd:annotation>
+   </xsd:element>
+  </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BeanB">
+  <xsd:sequence>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="StringValue" nillable="true" type="xsd:string"/>
+  </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="SampleBean">
+  <xsd:sequence>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Bean" nillable="true" type="tns:SampleBean"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="BeanArray" nillable="true" type="tns:SampleBeanArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Boolean" nillable="false" type="xsd:boolean"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="BooleanArray" nillable="true" type="ns1:booleanArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Byte" nillable="false" type="xsd:byte"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="ByteArray" nillable="true" type="xsd:base64Binary"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Calendar" nillable="true" type="xsd:dateTime"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="CalendarArray" nillable="true" type="ns1:dateTimeArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Double" nillable="false" type="xsd:double"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="DoubleArray" nillable="true" type="ns1:doubleArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Float" nillable="false" type="xsd:float"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="FloatArray" nillable="true" type="ns1:floatArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Int" nillable="false" type="xsd:int"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="IntArray" nillable="true" type="ns1:intArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Long" nillable="false" type="xsd:long"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="LongArray" nillable="true" type="ns1:longArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Replica" nillable="true" type="ns2:IAllTypesTestServiceReplica"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="Short" nillable="false" type="xsd:short"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="ShortArray" nillable="true" type="ns1:shortArrayType"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="String" nillable="true" type="xsd:string"/>
+   <xsd:element form="qualified" maxOccurs="1" minOccurs="1" name="StringArray" nillable="true" type="ns1:stringArrayType"/>
+  </xsd:sequence>
+ </xsd:complexType>
+</xsd:schema>

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.xsd
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.xsd?rev=357176&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.xsd (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/Replica_Infra.xsd Fri Dec 16 08:07:51 2005
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8" ?> 
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
+			xmlns:tns="Infra" 
+			targetNamespace="Infra">
+
+<!-- define a complex type for array of boolean -->   
+<xsd:element name="booleanItem" type="xsd:boolean" />	
+<xsd:complexType name="booleanArrayType">	  
+ <xsd:sequence>	    
+  <xsd:element ref="tns:booleanItem" minOccurs="0" maxOccurs="unbounded" />	  
+ </xsd:sequence>   
+</xsd:complexType>
+
+<!-- define a complex type for array of short -->
+<xsd:element name="shortItem" type="xsd:short" />	
+<xsd:complexType name="shortArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:shortItem" minOccurs="0" maxOccurs="unbounded" /> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of int -->
+<xsd:element name="intItem" type="xsd:int" />	
+<xsd:complexType name="intArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:intItem" minOccurs="0" maxOccurs="unbounded" /> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of long -->
+<xsd:element name="longItem" type="xsd:long" />	
+<xsd:complexType name="longArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:longItem" minOccurs="0" maxOccurs="unbounded" /> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of float -->
+<xsd:element name="floatItem" type="xsd:float" />	
+<xsd:complexType name="floatArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:floatItem" minOccurs="0" maxOccurs="unbounded" /> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of double -->
+<xsd:element name="doubleItem" type="xsd:double" />	
+<xsd:complexType name="doubleArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:doubleItem" minOccurs="0" maxOccurs="unbounded" /> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of string -->
+<xsd:element name="stringItem" type="xsd:string" nillable="true"/>	
+<xsd:complexType name="stringArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:stringItem" minOccurs="0" maxOccurs="unbounded"/> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<!-- define a complex type for array of dateTime -->
+<xsd:element name="dateTimeItem" type="xsd:dateTime" nillable="true"/>	
+<xsd:complexType name="dateTimeArrayType">
+ <xsd:sequence>
+  <xsd:element ref="tns:dateTimeItem" minOccurs="0" maxOccurs="unbounded"/> 
+ </xsd:sequence>
+</xsd:complexType>
+
+<xsd:complexType name="SessionToken">
+ <xsd:sequence>
+  <xsd:element name="SessionId" type="xsd:string" form="qualified" minOccurs="1" maxOccurs="1" nillable="true"/>
+ </xsd:sequence>
+</xsd:complexType>
+
+<xsd:complexType name="replicaType">
+  <xsd:sequence>
+  <xsd:any minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+</xsd:complexType>
+
+<xsd:complexType name="replica2Type">
+  <xsd:sequence>
+  <xsd:any minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+</xsd:complexType>
+
+<xsd:complexType name="ServiceExceptionType">
+ <xsd:sequence>
+    <xsd:element name="localizedMessage" nillable="true" type="xsd:string" />
+    <xsd:element name="message" nillable="true" type="xsd:string" /> 
+    <xsd:element name="code" nillable="false" type="xsd:int" />
+    <xsd:element name="errorArguments" nillable="true" type="tns:stringArrayType" />
+ </xsd:sequence>
+</xsd:complexType>
+<xsd:element name="ServiceException" type="tns:ServiceExceptionType"/>
+
+</xsd:schema>
+