The standard WSDL description listed below can be found here. You can find additional information at the SOAP Builders round 4 site.
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:s1="http://soapinterop.org/xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://soapinterop.org/" xmlns:s3="http://soapinterop.org/echoheader/" xmlns:soap12enc="http://www.w3.org/2002/06/soap-envelope" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s2="http://soapinterop.org" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://soapinterop.org/" xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/">
<s:import namespace="http://soapinterop.org/xsd" />
<s:import namespace="http://soapinterop.org/echoheader/" />
<s:element name="echoVoid">
<s:complexType />
</s:element>
<s:element name="echoVoidResponse">
<s:complexType />
</s:element>
<s:element name="echoInteger">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputInteger" type="s:int" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoIntegerResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s:int" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoFloat">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputFloat" type="s:float" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoFloatResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s:float" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoString">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputString" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoStringResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoBase64">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputBase64" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoBase64Response">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoDate">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputDate" type="s:dateTime" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoDateResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s:dateTime" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoComplexType">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoComplexTypeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoIntegerMultiOccurs">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputIntegerMultiOccurs" type="s0:ArrayOfInt" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfInt">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="int" type="s:int" />
</s:sequence>
</s:complexType>
<s:element name="echoIntegerMultiOccursResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:int" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoFloatMultiOccurs">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputFloatMultiOccurs" type="s0:ArrayOfFloat" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfFloat">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="float" type="s:float" />
</s:sequence>
</s:complexType>
<s:element name="echoFloatMultiOccursResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:float" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoStringMultiOccurs">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputStringMultiOccurs" type="s0:ArrayOfString" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="echoStringMultiOccursResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoComplexTypeMultiOccurs">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputComplexTypeMultiOccurs" type="s1:ArrayOfSOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SOAPComplexType" nillable="true" type="s1:SOAPComplexType" />
<s:element name="echoComplexTypeMultiOccursResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoDecimal">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputDecimal" type="s:decimal" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoDecimalResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s:decimal" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoBoolean">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputBoolean" type="s:boolean" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoBooleanResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s:boolean" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoHexBinary">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputHexBinary" type="s:hexBinary" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoHexBinaryResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s:hexBinary" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoComplexTypeAsSimpleTypes">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoComplexTypeAsSimpleTypesResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="outputString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="outputInteger" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="outputFloat" type="s:float" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoSimpleTypesAsComplexType">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="inputInteger" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="inputFloat" type="s:float" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoSimpleTypesAsComplexTypeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoNestedComplexType">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexTypeComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoNestedComplexTypeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexTypeComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoNestedMultiOccurs">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPMultiOccursComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoNestedMultiOccursResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPMultiOccursComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoChoice">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputChoice" type="s1:ChoiceComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoChoiceResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" type="s1:ChoiceComplexType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoEnum">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="inputEnum" type="s1:Enum" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoEnumResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="return" type="s1:Enum" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoAnyType">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputAnyType" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoAnyTypeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoAnyElement">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="inputAny">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoAnyElementResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="return">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="echoVoidSoapHeaderResponse">
<s:complexType />
</s:element>
<s:element name="echoMeComplexTypeRequest" type="s3:echoMeComplexTypeRequest" />
<s:element name="echoMeStringRequest" type="s3:echoMeStringRequest" />
<s:element name="echoMeComplexTypeResponse" type="s3:echoMeComplexTypeResponse" />
<s:element name="echoMeStringResponse" type="s3:echoMeStringResponse" />
</s:schema>
<s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/xsd">
<s:import namespace="http://soapinterop.org/" />
<s:complexType name="SOAPComplexType">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfSOAPComplexType">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" ref="s0:SOAPComplexType" />
</s:sequence>
</s:complexType>
<s:complexType name="SOAPComplexTypeComplexType">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
<s:element minOccurs="0" maxOccurs="1" name="varComplexType" type="s1:SOAPComplexType" />
</s:sequence>
</s:complexType>
<s:complexType name="SOAPMultiOccursComplexType">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
<s:element minOccurs="0" maxOccurs="1" name="varMultiOccurs" type="s1:ArrayOfString" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfString">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:complexType name="ChoiceComplexType">
<s:sequence>
<s:choice minOccurs="1" maxOccurs="1">
<s:element minOccurs="0" maxOccurs="1" name="name0" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="name1" type="s:string" />
</s:choice>
</s:sequence>
</s:complexType>
<s:simpleType name="Enum">
<s:restriction base="s:string">
<s:enumeration value="BitOne" />
<s:enumeration value="BitTwo" />
<s:enumeration value="BitThree" />
<s:enumeration value="BitFour" />
<s:enumeration value="BitFive" />
</s:restriction>
</s:simpleType>
</s:schema>
<s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org">
<s:element name="echoVoidSoapHeader">
<s:complexType />
</s:element>
</s:schema>
<s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/echoheader/">
<s:complexType name="echoMeComplexTypeRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
</s:sequence>
</s:complexType>
<s:complexType name="echoMeStringRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
</s:sequence>
</s:complexType>
<s:complexType name="echoMeComplexTypeResponse">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
</s:sequence>
</s:complexType>
<s:complexType name="echoMeStringResponse">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
</s:sequence>
</s:complexType>
</s:schema>
</types>
<message name="echoVoidSoapIn">
<part name="parameters" element="s0:echoVoid" />
</message>
<message name="echoVoidSoapOut">
<part name="parameters" element="s0:echoVoidResponse" />
</message>
<message name="echoIntegerSoapIn">
<part name="parameters" element="s0:echoInteger" />
</message>
<message name="echoIntegerSoapOut">
<part name="parameters" element="s0:echoIntegerResponse" />
</message>
<message name="echoFloatSoapIn">
<part name="parameters" element="s0:echoFloat" />
</message>
<message name="echoFloatSoapOut">
<part name="parameters" element="s0:echoFloatResponse" />
</message>
<message name="echoStringSoapIn">
<part name="parameters" element="s0:echoString" />
</message>
<message name="echoStringSoapOut">
<part name="parameters" element="s0:echoStringResponse" />
</message>
<message name="echoBase64SoapIn">
<part name="parameters" element="s0:echoBase64" />
</message>
<message name="echoBase64SoapOut">
<part name="parameters" element="s0:echoBase64Response" />
</message>
<message name="echoDateSoapIn">
<part name="parameters" element="s0:echoDate" />
</message>
<message name="echoDateSoapOut">
<part name="parameters" element="s0:echoDateResponse" />
</message>
<message name="echoComplexTypeSoapIn">
<part name="parameters" element="s0:echoComplexType" />
</message>
<message name="echoComplexTypeSoapOut">
<part name="parameters" element="s0:echoComplexTypeResponse" />
</message>
<message name="echoIntegerMultiOccursSoapIn">
<part name="parameters" element="s0:echoIntegerMultiOccurs" />
</message>
<message name="echoIntegerMultiOccursSoapOut">
<part name="parameters" element="s0:echoIntegerMultiOccursResponse" />
</message>
<message name="echoFloatMultiOccursSoapIn">
<part name="parameters" element="s0:echoFloatMultiOccurs" />
</message>
<message name="echoFloatMultiOccursSoapOut">
<part name="parameters" element="s0:echoFloatMultiOccursResponse" />
</message>
<message name="echoStringMultiOccursSoapIn">
<part name="parameters" element="s0:echoStringMultiOccurs" />
</message>
<message name="echoStringMultiOccursSoapOut">
<part name="parameters" element="s0:echoStringMultiOccursResponse" />
</message>
<message name="echoComplexTypeMultiOccursSoapIn">
<part name="parameters" element="s0:echoComplexTypeMultiOccurs" />
</message>
<message name="echoComplexTypeMultiOccursSoapOut">
<part name="parameters" element="s0:echoComplexTypeMultiOccursResponse" />
</message>
<message name="echoDecimalSoapIn">
<part name="parameters" element="s0:echoDecimal" />
</message>
<message name="echoDecimalSoapOut">
<part name="parameters" element="s0:echoDecimalResponse" />
</message>
<message name="echoBooleanSoapIn">
<part name="parameters" element="s0:echoBoolean" />
</message>
<message name="echoBooleanSoapOut">
<part name="parameters" element="s0:echoBooleanResponse" />
</message>
<message name="echoHexBinarySoapIn">
<part name="parameters" element="s0:echoHexBinary" />
</message>
<message name="echoHexBinarySoapOut">
<part name="parameters" element="s0:echoHexBinaryResponse" />
</message>
<message name="echoComplexTypeAsSimpleTypesSoapIn">
<part name="parameters" element="s0:echoComplexTypeAsSimpleTypes" />
</message>
<message name="echoComplexTypeAsSimpleTypesSoapOut">
<part name="parameters" element="s0:echoComplexTypeAsSimpleTypesResponse" />
</message>
<message name="echoSimpleTypesAsComplexTypeSoapIn">
<part name="parameters" element="s0:echoSimpleTypesAsComplexType" />
</message>
<message name="echoSimpleTypesAsComplexTypeSoapOut">
<part name="parameters" element="s0:echoSimpleTypesAsComplexTypeResponse" />
</message>
<message name="echoNestedComplexTypeSoapIn">
<part name="parameters" element="s0:echoNestedComplexType" />
</message>
<message name="echoNestedComplexTypeSoapOut">
<part name="parameters" element="s0:echoNestedComplexTypeResponse" />
</message>
<message name="echoNestedMultiOccursSoapIn">
<part name="parameters" element="s0:echoNestedMultiOccurs" />
</message>
<message name="echoNestedMultiOccursSoapOut">
<part name="parameters" element="s0:echoNestedMultiOccursResponse" />
</message>
<message name="echoChoiceSoapIn">
<part name="parameters" element="s0:echoChoice" />
</message>
<message name="echoChoiceSoapOut">
<part name="parameters" element="s0:echoChoiceResponse" />
</message>
<message name="echoEnumSoapIn">
<part name="parameters" element="s0:echoEnum" />
</message>
<message name="echoEnumSoapOut">
<part name="parameters" element="s0:echoEnumResponse" />
</message>
<message name="echoAnyTypeSoapIn">
<part name="parameters" element="s0:echoAnyType" />
</message>
<message name="echoAnyTypeSoapOut">
<part name="parameters" element="s0:echoAnyTypeResponse" />
</message>
<message name="echoAnyElementSoapIn">
<part name="parameters" element="s0:echoAnyElement" />
</message>
<message name="echoAnyElementSoapOut">
<part name="parameters" element="s0:echoAnyElementResponse" />
</message>
<message name="echoVoidSoapHeaderSoapIn">
<part name="parameters" element="s2:echoVoidSoapHeader" />
</message>
<message name="echoVoidSoapHeaderSoapOut">
<part name="parameters" element="s0:echoVoidSoapHeaderResponse" />
</message>
<message name="echoVoidSoapHeaderechoMeComplexTypeRequest">
<part name="echoMeComplexTypeRequest" element="s0:echoMeComplexTypeRequest" />
</message>
<message name="echoVoidSoapHeaderechoMeComplexTypeResponse">
<part name="echoMeComplexTypeResponse" element="s0:echoMeComplexTypeResponse" />
</message>
<message name="echoVoidSoapHeaderechoMeStringRequest">
<part name="echoMeStringRequest" element="s0:echoMeStringRequest" />
</message>
<message name="echoVoidSoapHeaderechoMeStringResponse">
<part name="echoMeStringResponse" element="s0:echoMeStringResponse" />
</message>
<portType name="Round4XSDTestSoap">
<operation name="echoVoid">
<input message="s0:echoVoidSoapIn" />
<output message="s0:echoVoidSoapOut" />
</operation>
<operation name="echoInteger">
<input message="s0:echoIntegerSoapIn" />
<output message="s0:echoIntegerSoapOut" />
</operation>
<operation name="echoFloat">
<input message="s0:echoFloatSoapIn" />
<output message="s0:echoFloatSoapOut" />
</operation>
<operation name="echoString">
<input message="s0:echoStringSoapIn" />
<output message="s0:echoStringSoapOut" />
</operation>
<operation name="echoBase64">
<input message="s0:echoBase64SoapIn" />
<output message="s0:echoBase64SoapOut" />
</operation>
<operation name="echoDate">
<input message="s0:echoDateSoapIn" />
<output message="s0:echoDateSoapOut" />
</operation>
<operation name="echoComplexType">
<input message="s0:echoComplexTypeSoapIn" />
<output message="s0:echoComplexTypeSoapOut" />
</operation>
<operation name="echoIntegerMultiOccurs">
<input message="s0:echoIntegerMultiOccursSoapIn" />
<output message="s0:echoIntegerMultiOccursSoapOut" />
</operation>
<operation name="echoFloatMultiOccurs">
<input message="s0:echoFloatMultiOccursSoapIn" />
<output message="s0:echoFloatMultiOccursSoapOut" />
</operation>
<operation name="echoStringMultiOccurs">
<input message="s0:echoStringMultiOccursSoapIn" />
<output message="s0:echoStringMultiOccursSoapOut" />
</operation>
<operation name="echoComplexTypeMultiOccurs">
<input message="s0:echoComplexTypeMultiOccursSoapIn" />
<output message="s0:echoComplexTypeMultiOccursSoapOut" />
</operation>
<operation name="echoDecimal">
<input message="s0:echoDecimalSoapIn" />
<output message="s0:echoDecimalSoapOut" />
</operation>
<operation name="echoBoolean">
<input message="s0:echoBooleanSoapIn" />
<output message="s0:echoBooleanSoapOut" />
</operation>
<operation name="echoHexBinary">
<input message="s0:echoHexBinarySoapIn" />
<output message="s0:echoHexBinarySoapOut" />
</operation>
<operation name="echoComplexTypeAsSimpleTypes">
<input message="s0:echoComplexTypeAsSimpleTypesSoapIn" />
<output message="s0:echoComplexTypeAsSimpleTypesSoapOut" />
</operation>
<operation name="echoSimpleTypesAsComplexType">
<input message="s0:echoSimpleTypesAsComplexTypeSoapIn" />
<output message="s0:echoSimpleTypesAsComplexTypeSoapOut" />
</operation>
<operation name="echoNestedComplexType">
<input message="s0:echoNestedComplexTypeSoapIn" />
<output message="s0:echoNestedComplexTypeSoapOut" />
</operation>
<operation name="echoNestedMultiOccurs">
<input message="s0:echoNestedMultiOccursSoapIn" />
<output message="s0:echoNestedMultiOccursSoapOut" />
</operation>
<operation name="echoChoice">
<input message="s0:echoChoiceSoapIn" />
<output message="s0:echoChoiceSoapOut" />
</operation>
<operation name="echoEnum">
<input message="s0:echoEnumSoapIn" />
<output message="s0:echoEnumSoapOut" />
</operation>
<operation name="echoAnyType">
<input message="s0:echoAnyTypeSoapIn" />
<output message="s0:echoAnyTypeSoapOut" />
</operation>
<operation name="echoAnyElement">
<input message="s0:echoAnyElementSoapIn" />
<output message="s0:echoAnyElementSoapOut" />
</operation>
<operation name="echoVoidSoapHeader">
<input message="s0:echoVoidSoapHeaderSoapIn" />
<output message="s0:echoVoidSoapHeaderSoapOut" />
</operation>
</portType>
<binding name="Round4XSDTestSoap" type="s0:Round4XSDTestSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
<operation name="echoVoid">
<soap:operation soapAction="http://soapinterop.org/echoVoid" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoInteger">
<soap:operation soapAction="http://soapinterop.org/echoInteger" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoFloat">
<soap:operation soapAction="http://soapinterop.org/echoFloat" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoString">
<soap:operation soapAction="http://soapinterop.org/echoString" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoBase64">
<soap:operation soapAction="http://soapinterop.org/echoBase64" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoDate">
<soap:operation soapAction="http://soapinterop.org/echoDate" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoComplexType">
<soap:operation soapAction="http://soapinterop.org/echoComplexType" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoIntegerMultiOccurs">
<soap:operation soapAction="http://soapinterop.org/echoIntegerMultiOccurs" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoFloatMultiOccurs">
<soap:operation soapAction="http://soapinterop.org/echoFloatMultiOccurs" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoStringMultiOccurs">
<soap:operation soapAction="http://soapinterop.org/echoStringMultiOccurs" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoComplexTypeMultiOccurs">
<soap:operation soapAction="http://soapinterop.org/echoComplexTypeMultiOccurs" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoDecimal">
<soap:operation soapAction="http://soapinterop.org/echoDecimal" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoBoolean">
<soap:operation soapAction="http://soapinterop.org/echoBoolean" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoHexBinary">
<soap:operation soapAction="http://soapinterop.org/echoHexBinary" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoComplexTypeAsSimpleTypes">
<soap:operation soapAction="http://soapinterop.org/echoComplexTypeAsSimpleTypes" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoSimpleTypesAsComplexType">
<soap:operation soapAction="http://soapinterop.org/echoSimpleTypesAsComplexType" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoNestedComplexType">
<soap:operation soapAction="http://soapinterop.org/echoNestedComplexType" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoNestedMultiOccurs">
<soap:operation soapAction="http://soapinterop.org/echoNestedMultiOccurs" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoChoice">
<soap:operation soapAction="http://soapinterop.org/echoChoice" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoEnum">
<soap:operation soapAction="http://soapinterop.org/echoEnum" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoAnyType">
<soap:operation soapAction="http://soapinterop.org/echoAnyType" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoAnyElement">
<soap:operation soapAction="http://soapinterop.org/echoAnyElement" style="document" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
</operation>
<operation name="echoVoidSoapHeader">
<soap:operation soapAction="http://soapinterop.org" style="document" />
<input>
<soap:body use="literal" />
<soap:header message="s0:echoVoidSoapHeaderechoMeComplexTypeRequest" part="echoMeComplexTypeRequest" use="literal" />
<soap:header message="s0:echoVoidSoapHeaderechoMeStringRequest" part="echoMeStringRequest" use="literal" />
</input>
<output>
<soap:body use="literal" />
<soap:header message="s0:echoVoidSoapHeaderechoMeComplexTypeResponse" part="echoMeComplexTypeResponse" use="literal" />
<soap:header message="s0:echoVoidSoapHeaderechoMeStringResponse" part="echoMeStringResponse" use="literal" />
</output>
</operation>
</binding>
<binding name="Round4XSDTestSoap12" type="s0:Round4XSDTestSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
<operation name="echoVoid">
<soap12:operation soapAction="http://soapinterop.org/echoVoid" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoInteger">
<soap12:operation soapAction="http://soapinterop.org/echoInteger" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoFloat">
<soap12:operation soapAction="http://soapinterop.org/echoFloat" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoString">
<soap12:operation soapAction="http://soapinterop.org/echoString" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoBase64">
<soap12:operation soapAction="http://soapinterop.org/echoBase64" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoDate">
<soap12:operation soapAction="http://soapinterop.org/echoDate" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoComplexType">
<soap12:operation soapAction="http://soapinterop.org/echoComplexType" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoIntegerMultiOccurs">
<soap12:operation soapAction="http://soapinterop.org/echoIntegerMultiOccurs" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoFloatMultiOccurs">
<soap12:operation soapAction="http://soapinterop.org/echoFloatMultiOccurs" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoStringMultiOccurs">
<soap12:operation soapAction="http://soapinterop.org/echoStringMultiOccurs" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoComplexTypeMultiOccurs">
<soap12:operation soapAction="http://soapinterop.org/echoComplexTypeMultiOccurs" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoDecimal">
<soap12:operation soapAction="http://soapinterop.org/echoDecimal" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoBoolean">
<soap12:operation soapAction="http://soapinterop.org/echoBoolean" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoHexBinary">
<soap12:operation soapAction="http://soapinterop.org/echoHexBinary" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoComplexTypeAsSimpleTypes">
<soap12:operation soapAction="http://soapinterop.org/echoComplexTypeAsSimpleTypes" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoSimpleTypesAsComplexType">
<soap12:operation soapAction="http://soapinterop.org/echoSimpleTypesAsComplexType" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoNestedComplexType">
<soap12:operation soapAction="http://soapinterop.org/echoNestedComplexType" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoNestedMultiOccurs">
<soap12:operation soapAction="http://soapinterop.org/echoNestedMultiOccurs" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoChoice">
<soap12:operation soapAction="http://soapinterop.org/echoChoice" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoEnum">
<soap12:operation soapAction="http://soapinterop.org/echoEnum" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoAnyType">
<soap12:operation soapAction="http://soapinterop.org/echoAnyType" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoAnyElement">
<soap12:operation soapAction="http://soapinterop.org/echoAnyElement" style="document" />
<input>
<soap12:body use="literal" />
</input>
<output>
<soap12:body use="literal" />
</output>
</operation>
<operation name="echoVoidSoapHeader">
<soap12:operation soapAction="http://soapinterop.org" style="document" />
<input>
<soap12:body use="literal" />
<soap12:header message="s0:echoVoidSoapHeaderechoMeComplexTypeRequest" part="echoMeComplexTypeRequest" use="literal" />
<soap12:header message="s0:echoVoidSoapHeaderechoMeStringRequest" part="echoMeStringRequest" use="literal" />
</input>
<output>
<soap12:body use="literal" />
<soap12:header message="s0:echoVoidSoapHeaderechoMeComplexTypeResponse" part="echoMeComplexTypeResponse" use="literal" />
<soap12:header message="s0:echoVoidSoapHeaderechoMeStringResponse" part="echoMeStringResponse" use="literal" />
</output>
</operation>
</binding>
<service name="Round4XSDTest">
<documentation>These operations implement DOC/LIT SOAP operations, for interop testing. Please email johnko@microsoft.com with any questions/coments.</documentation>
<port name="Round4XSDTestSoap" binding="s0:Round4XSDTestSoap">
<soap:address location="http://soapinterop.novell.com/interop/round4/groupi/xsd" />
</port>
<port name="Round4XSDTestSoap12" binding="s0:Round4XSDTestSoap12">
<soap12:address location="http://soapinterop.novell.com/interop/round4/groupi/xsd" />
</port>
</service>
</definitions>
If you invoke wsdl2java on the above WSDL document, you can run this client to interact with the service:
package groupi.xsd;
import javax.naming.InitialContext;
import javax.xml.rpc.Stub;
public class Client
{
public static void main(String[] args) throws Exception
{
| InitialContext ctx = new InitialContext();
| Round4XSDTest service = (Round4XSDTest)
| ctx.lookup("xmlrpc:soap:groupi.xsd.Round4XSDTest");
|
| Round4XSDTestSoap stub = service.getRound4XSDTestSoap();
| // set the end point address
| if (args.length > 0)
| ((Stub)stub)._setProperty("javax.xml.rpc.service.endpoint.address",
| args[0]);
|
| echoAnyElement(stub);
| echoChoice(stub);
| echoNestedMultiOccurs(stub);
| echoVoid(stub);
| echoFloat(stub);
| echoHexBinary(stub);
| echoSimpleTypesAsComplexType(stub);
| echoComplexTypeMultiOccurs(stub);
| echoInteger(stub);
| echoFloatMultiOccurs(stub);
| echoDate(stub);
| echoDecimal(stub);
| echoString(stub);
| echoComplexTypeAsSimpleTypes(stub);
| echoBase64(stub);
| echoAnyType(stub);
| echoVoidSoapHeader(stub);
| echoEnum(stub);
| echoBoolean(stub);
| echoStringMultiOccurs(stub);
| echoComplexType(stub);
| echoNestedComplexType(stub);
| echoIntegerMultiOccurs(stub);
}
public static void echoAnyElement(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoAnyElement: ");
| | boolean result = Tests.echoAnyElement(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoAnyElement:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoChoice(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoChoice: ");
| | boolean result = Tests.echoChoice(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoChoice:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoNestedMultiOccurs(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoNestedMultiOccurs: ");
| | boolean result = Tests.echoNestedMultiOccurs(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoNestedMultiOccurs:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoVoid(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoVoid: ");
| | boolean result = Tests.echoVoid(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoVoid:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoFloat(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoFloat: ");
| | boolean result = Tests.echoFloat(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoFloat:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoHexBinary(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoHexBinary: ");
| | boolean result = Tests.echoHexBinary(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoHexBinary:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoSimpleTypesAsComplexType(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoSimpleTypesAsComplexType: ");
| | boolean result = Tests.echoSimpleTypesAsComplexType(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoSimpleTypesAsComplexType:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoComplexTypeMultiOccurs(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoComplexTypeMultiOccurs: ");
| | boolean result = Tests.echoComplexTypeMultiOccurs(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoComplexTypeMultiOccurs:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoInteger(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoInteger: ");
| | boolean result = Tests.echoInteger(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoInteger:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoFloatMultiOccurs(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoFloatMultiOccurs: ");
| | boolean result = Tests.echoFloatMultiOccurs(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoFloatMultiOccurs:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoDate(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoDate: ");
| | boolean result = Tests.echoDate(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoDate:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoDecimal(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoDecimal: ");
| | boolean result = Tests.echoDecimal(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoDecimal:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoString(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoString: ");
| | boolean result = Tests.echoString(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoString:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoComplexTypeAsSimpleTypes(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoComplexTypeAsSimpleTypes: ");
| | boolean result = Tests.echoComplexTypeAsSimpleTypes(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoComplexTypeAsSimpleTypes:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoBase64(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoBase64: ");
| | boolean result = Tests.echoBase64(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoBase64:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoAnyType(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoAnyType: ");
| | boolean result = Tests.echoAnyType(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
ex.printStackTrace();
| | System.out.println("error invoking echoAnyType:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoVoidSoapHeader(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoVoidSoapHeader: ");
| | boolean result = Tests.echoVoidSoapHeader(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoVoidSoapHeader:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoEnum(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoEnum: ");
| | boolean result = Tests.echoEnum(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoEnum:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoBoolean(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoBoolean: ");
| | boolean result = Tests.echoBoolean(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoBoolean:" + ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoStringMultiOccurs(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoStringMultiOccurs: ");
| | boolean result = Tests.echoStringMultiOccurs(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoStringMultiOccurs:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoComplexType(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoComplexType: ");
| | boolean result = Tests.echoComplexType(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoComplexType:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoNestedComplexType(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoNestedComplexType: ");
| | boolean result = Tests.echoNestedComplexType(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoNestedComplexType:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
public static void echoIntegerMultiOccurs(Round4XSDTestSoap stub)
{
| try
| {
| | System.out.print("echoIntegerMultiOccurs: ");
| | boolean result = Tests.echoIntegerMultiOccurs(stub);
| | System.out.println(result ? "OK" : "failed");
| }
| catch (java.lang.Exception ex)
| {
| | System.out.println("error invoking echoIntegerMultiOccurs:" +
| | ex.getMessage());
| | if (System.getProperty("DEBUG") != null)
| | ex.printStackTrace();
| }
}
}
An implementation of the service endpoint from the above WSDL is listed below:
// Thu Oct 03 12:38:40 PDT 2002
package groupi.xsd;
import javax.servlet.ServletException;
public class ServerImpl extends Round4XSDTestSoap_ServiceSkeleton
{
public void init()
throws ServletException
{
| super.init();
|
| // Set the WSDL file property
| _setProperty("xmlrpc.wsdl", "round4XSD.wsdl");
}
// public EchoAnyElementResponseReturn echoAnyElement(EchoAnyElementInputAny i0)
public Return echoAnyElement(InputAny i0)
throws java.rmi.RemoteException
{
// return new EchoAnyElementResponseReturn(i0);
| return new Return(i0);
}
public ChoiceComplexType echoChoice(ChoiceComplexType i0)
throws java.rmi.RemoteException
{
| return i0;
}
public SOAPMultiOccursComplexType echoNestedMultiOccurs(
SOAPMultiOccursComplexType i0)
throws java.rmi.RemoteException
{
| return i0;
}
public EchoVoidResponse echoVoid(EchoVoid i0)
throws java.rmi.RemoteException
{
| return new EchoVoidResponse();
}
public float echoFloat(float i0)
throws java.rmi.RemoteException
{
| return i0;
}
public byte[] echoHexBinary(byte[] i0)
throws java.rmi.RemoteException
{
| return i0;
}
public SOAPComplexType echoSimpleTypesAsComplexType(
String i0, int i1, float i2)
throws java.rmi.RemoteException
{
| return new SOAPComplexType(i1, i0, i2);
}
public SOAPComplexType[] echoComplexTypeMultiOccurs(
ArrayOfSOAPComplexType i0)
throws java.rmi.RemoteException
{
// return i0.getSoapComplexType();
| return i0.getSOAPComplexType();
}
public int echoInteger(int i0)
throws java.rmi.RemoteException
{
| return i0;
}
public float[] echoFloatMultiOccurs( ArrayOfFloat i0)
throws java.rmi.RemoteException
{
// return i0.get_float();
| return i0.getFloat();
}
public java.util.Calendar echoDate(java.util.Calendar i0)
throws java.rmi.RemoteException
{
| return i0;
}
public java.math.BigDecimal echoDecimal(java.math.BigDecimal i0)
throws java.rmi.RemoteException
{
| return i0;
}
public String echoString(String i0)
throws java.rmi.RemoteException
{
| return i0;
}
public EchoComplexTypeAsSimpleTypesResponse echoComplexTypeAsSimpleTypes(
SOAPComplexType i0)
throws java.rmi.RemoteException
{
| return new EchoComplexTypeAsSimpleTypesResponse(i0.getVarString(),
| i0.getVarInt(), i0.getVarFloat());
}
public byte[] echoBase64(byte[] i0)
throws java.rmi.RemoteException
{
| return i0;
}
public java.lang.Object echoAnyType(java.lang.Object i0)
throws java.rmi.RemoteException
{
| return i0;
}
public EchoVoidSoapHeaderResponse echoVoidSoapHeader(EchoVoidSoapHeader i0)
throws java.rmi.RemoteException
{
| return new EchoVoidSoapHeaderResponse();
}
public groupi.xsd.Enum echoEnum(groupi.xsd.Enum i0)
throws java.rmi.RemoteException
{
| return i0;
}
public boolean echoBoolean(boolean i0)
throws java.rmi.RemoteException
{
| return i0;
}
public java.lang.String[] echoStringMultiOccurs(
ArrayOfString i0)
throws java.rmi.RemoteException
{
| return i0.getString();
}
public SOAPComplexType echoComplexType(SOAPComplexType i0)
throws java.rmi.RemoteException
{
| return i0;
}
public SOAPComplexTypeComplexType echoNestedComplexType(
SOAPComplexTypeComplexType i0)
throws java.rmi.RemoteException
{
| return i0;
}
public int[] echoIntegerMultiOccurs(ArrayOfInt i0)
throws java.rmi.RemoteException
{
// return i0.get_int();
| return i0.getInt();
}
}
Copyright © 2003, 2004 Novell, Inc. All rights reserved. Copyright © 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.