blob: 9357b5a97cde19fd37ce7881dc8f745c2885f3aa [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Licensed to the Apache Software Foundation (ASF) under one
~ or more contributor license agreements. See the NOTICE file
~ distributed with this work for additional information
~ regarding copyright ownership. The ASF licenses this file
~ to you 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.
-->
<definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://soapinterop.org/wsdl"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="http://soapinterop.org/types"
xmlns:ns3="http://soapinterop.org/types/part"
xmlns:ns4="http://soapinterop.org/types/requestresponse"
targetNamespace="http://soapinterop.org/wsdl">
<types>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://soapinterop.org/types"
targetNamespace="http://soapinterop.org/types">
<complexType name="ArrayOfString">
<sequence>
<element name="value" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="ArrayOfInt">
<sequence>
<element name="value" minOccurs="0" maxOccurs="unbounded" type="xsd:int"/>
</sequence>
</complexType>
<complexType name="ArrayOfFloat">
<sequence>
<element name="value" minOccurs="0" maxOccurs="unbounded" type="xsd:float"/>
</sequence>
</complexType>
<simpleType name="Enum">
<restriction base="xsd:int">
<enumeration value="1"/>
<enumeration value="2"/>
</restriction>
</simpleType>
</schema>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://soapinterop.org/types/part"
targetNamespace="http://soapinterop.org/types/part">
<element name="EmptyPart">
<complexType/>
</element>
<element name="StringPart" type="xsd:string"/>
<element name="IntPart" type="xsd:int"/>
<element name="FloatPart" type="xsd:float"/>
<element name="ArrayOfStringPart" type="ns2:ArrayOfString"/>
<element name="ArrayOfIntPart" type="ns2:ArrayOfInt"/>
<element name="ArrayOfFloatPart" type="ns2:ArrayOfFloat"/>
<element name="String2Part" type="xsd:string"/>
<element name="EnumPart" type="ns2:Enum"/>
</schema>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://soapinterop.org/types/requestresponse"
targetNamespace="http://soapinterop.org/types/requestresponse">
<element name="echoEmptyFaultRequest">
<complexType/>
</element>
<element name="echoEmptyFaultResponse">
<complexType/>
</element>
<element name="echoStringFaultRequest" type="xsd:string"/>
<element name="echoStringFaultResponse">
<complexType/>
</element>
<element name="echoIntArrayFaultRequest" type="ns2:ArrayOfInt"/>
<element name="echoIntArrayFaultResponse">
<complexType/>
</element>
<element name="echoMultipleFaults1Request">
<complexType>
<sequence>
<element name="whichFault" type="xsd:int"/>
<element name="param1" type="xsd:string"/>
<element name="param2" type="ns2:ArrayOfFloat"/>
</sequence>
</complexType>
</element>
<element name="echoMultipleFaults1Response">
<complexType/>
</element>
<element name="echoMultipleFaults2Request">
<complexType>
<sequence>
<element name="whichFault" type="xsd:int"/>
<element name="param1" type="xsd:string"/>
<element name="param2" type="xsd:float"/>
<element name="param3" type="ns2:ArrayOfString"/>
</sequence>
</complexType>
</element>
<element name="echoMultipleFaults2Response">
<complexType/>
</element>
<element name="echoMultipleFaults3Request">
<complexType>
<sequence>
<element name="whichFault" type="xsd:int"/>
<element name="param1" type="xsd:string"/>
<element name="param2" type="xsd:string"/>
</sequence>
</complexType>
</element>
<element name="echoMultipleFaults3Response">
<complexType/>
</element>
<element name="echoMultipleFaults4Request">
<complexType>
<sequence>
<element name="whichFault" type="xsd:int"/>
<element name="param1" type="xsd:int"/>
<element name="param2" type="ns2:Enum"/>
</sequence>
</complexType>
</element>
<element name="echoMultipleFaults4Response">
<complexType/>
</element>
</schema>
</types>
<message name="echoEmptyFaultRequest">
<part name="param" element="ns4:echoEmptyFaultRequest"/>
</message>
<message name="echoEmptyFaultResponse">
<part name="param" element="ns4:echoEmptyFaultResponse"/>
</message>
<message name="echoStringFaultRequest">
<part name="param" element="ns4:echoStringFaultRequest"/>
</message>
<message name="echoStringFaultResponse">
<part name="param" element="ns4:echoStringFaultResponse"/>
</message>
<message name="echoIntArrayFaultRequest">
<part name="param" element="ns4:echoIntArrayFaultRequest"/>
</message>
<message name="echoIntArrayFaultResponse">
<part name="param" element="ns4:echoIntArrayFaultResponse"/>
</message>
<message name="echoMultipleFaults1Request">
<part name="param" element="ns4:echoMultipleFaults1Request"/>
</message>
<message name="echoMultipleFaults1Response">
<part name="param" element="ns4:echoMultipleFaults1Response"/>
</message>
<message name="echoMultipleFaults2Request">
<part name="param" element="ns4:echoMultipleFaults2Request"/>
</message>
<message name="echoMultipleFaults2Response">
<part name="param" element="ns4:echoMultipleFaults2Response"/>
</message>
<message name="echoMultipleFaults3Request">
<part name="param" element="ns4:echoMultipleFaults3Request"/>
</message>
<message name="echoMultipleFaults3Response">
<part name="param" element="ns4:echoMultipleFaults3Response"/>
</message>
<message name="echoMultipleFaults4Request">
<part name="param" element="ns4:echoMultipleFaults4Request"/>
</message>
<message name="echoMultipleFaults4Response">
<part name="param" element="ns4:echoMultipleFaults4Response"/>
</message>
<!-- Fault messages -->
<message name="EmptyFault">
<part name="part1" element="ns3:EmptyPart"/>
</message>
<message name="StringFault">
<part name="part2" element="ns3:StringPart"/>
</message>
<message name="IntFault">
<part name="part3" element="ns3:IntPart"/>
</message>
<message name="FloatFault">
<part name="part4" element="ns3:FloatPart"/>
</message>
<message name="StringArrayFault">
<part name="part5" element="ns3:ArrayOfStringPart"/>
</message>
<message name="IntArrayFault">
<part name="part6" element="ns3:ArrayOfIntPart"/>
</message>
<message name="FloatArrayFault">
<part name="part7" element="ns3:ArrayOfFloatPart"/>
</message>
<!--
Part name same as in Fault2 message
-->
<message name="String2Fault">
<part name="part2" element="ns3:String2Part"/>
</message>
<message name="EnumFault">
<part name="part9" element="ns3:EnumPart"/>
</message>
<portType name="SimpleDocLitPortType">
<!--
Throws an empty fault
-->
<operation name="echoEmptyFault" parameterOrder="">
<input message="tns:echoEmptyFaultRequest"/>
<output message="tns:echoEmptyFaultResponse"/>
<fault name="SimpleFault" message="tns:EmptyFault"/>
</operation>
<!--
Throws fault with xsd:string parameter
-->
<operation name="echoStringFault" parameterOrder="param">
<input message="tns:echoStringFaultRequest"/>
<output message="tns:echoStringFaultResponse"/>
<fault name="SimpleFault" message="tns:StringFault"/>
</operation>
<!--
Throws fault with xsd:int[] parameter
-->
<operation name="echoIntArrayFault" parameterOrder="param">
<input message="tns:echoIntArrayFaultRequest"/>
<output message="tns:echoIntArrayFaultResponse"/>
<fault name="SimpleFault" message="tns:IntArrayFault"/>
</operation>
<!--
Throws empty fault, fault with a xsd:string
parameter and fault with xsd:float[] parameter
-->
<operation name="echoMultipleFaults1" parameterOrder="param">
<input message="tns:echoMultipleFaults1Request"/>
<output message="tns:echoMultipleFaults1Response"/>
<fault name="SimpleFault1" message="tns:EmptyFault"/>
<fault name="SimpleFault2" message="tns:StringFault"/>
<fault name="SimpleFault3" message="tns:FloatArrayFault"/>
</operation>
<!--
Throws fault with xsd:string parameter, fault with
xsd:float parameter and fault with xsd:string[]
parameters
-->
<operation name="echoMultipleFaults2" parameterOrder="param">
<input message="tns:echoMultipleFaults2Request"/>
<output message="tns:echoMultipleFaults2Response"/>
<fault name="SimpleFault1" message="tns:StringFault"/>
<fault name="SimpleFault2" message="tns:FloatFault"/>
<fault name="SimpleFault3" message="tns:StringArrayFault"/>
</operation>
<!--
Throws two faults, each with xsd:string parameters
and same part names
-->
<operation name="echoMultipleFaults3" parameterOrder="param">
<input message="tns:echoMultipleFaults3Request"/>
<output message="tns:echoMultipleFaults3Response"/>
<fault name="SimpleFault1" message="tns:StringFault"/>
<fault name="SimpleFault2" message="tns:String2Fault"/>
</operation>
<!--
Throws fault with xsd:int parameter and fault with an
int enumeration parameter
-->
<operation name="echoMultipleFaults4" parameterOrder="param">
<input message="tns:echoMultipleFaults4Request"/>
<output message="tns:echoMultipleFaults4Response"/>
<fault name="SimpleFault1" message="tns:IntFault"/>
<fault name="SimpleFault2" message="tns:EnumFault"/>
</operation>
</portType>
<binding name="SimpleDocLitBinding" type="tns:SimpleDocLitPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="echoEmptyFault">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault">
<soap:fault name="SimpleFault" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoStringFault">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault">
<soap:fault name="SimpleFault" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoIntArrayFault">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault">
<soap:fault name="SimpleFault" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoMultipleFaults1">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault1">
<soap:fault name="SimpleFault1" use="literal"/>
</fault>
<fault name="SimpleFault2">
<soap:fault name="SimpleFault2" use="literal"/>
</fault>
<fault name="SimpleFault3">
<soap:fault name="SimpleFault3" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoMultipleFaults2">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault1">
<soap:fault name="SimpleFault1" use="literal"/>
</fault>
<fault name="SimpleFault2">
<soap:fault name="SimpleFault2" use="literal"/>
</fault>
<fault name="SimpleFault3">
<soap:fault name="SimpleFault3" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoMultipleFaults3">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault1">
<soap:fault name="SimpleFault1" use="literal"/>
</fault>
<fault name="SimpleFault2">
<soap:fault name="SimpleFault2" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
<operation name="echoMultipleFaults4">
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="SimpleFault1">
<soap:fault name="SimpleFault1" use="literal"/>
</fault>
<fault name="SimpleFault2">
<soap:fault name="SimpleFault2" use="literal"/>
</fault>
<soap:operation soapAction="http://soapinterop.org/r4/groupg/"/>
</operation>
</binding>
<service name="SimpleDocLitService">
<port name="SimpleDocLitPort" binding="tns:SimpleDocLitBinding">
<soap:address
location="http://localhost:8080/axis/services/SimpleDocLitPort"/>
</port>
</service>
</definitions>