blob: 7469f0da8d02c84c81cb859baf8e5769ea6c33ac [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 name="FaultsService" targetNamespace="http://org/test/polymorphicfaults"
xmlns:tns="http://org/test/polymorphicfaults"
xmlns:ts="http://org/test/polymorphicfaults"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<xsd:schema targetNamespace="http://org/test/polymorphicfaults">
<xsd:element name="SimpleFault" type="xsd:int"/>
<xsd:element name="InvalidTickerFault" type="ts:InvalidTickerFault_ExceptionBean"/>
<xsd:complexType name="InvalidTickerFault_ExceptionBean">
<xsd:sequence>
<xsd:element name="legacyData1" type="xsd:string" />
<xsd:element name="legacyData2" type="xsd:int" />
<xsd:element name="message" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="BaseFault" type="ts:BaseFault"/>
<xsd:complexType name="BaseFault">
<xsd:sequence>
<xsd:element name="a" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="DerivedFault1" type="ts:DerivedFault1"/>
<xsd:complexType name="DerivedFault1">
<xsd:complexContent>
<xsd:extension base="ts:BaseFault">
<xsd:sequence>
<xsd:element name="b" type="xsd:string"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="DerivedFault2" type="ts:DerivedFault2"/>
<xsd:complexType name="DerivedFault2">
<xsd:complexContent>
<xsd:extension base="ts:DerivedFault1">
<xsd:sequence>
<xsd:element name="c" type="xsd:float"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="ComplexFault" type="ts:ComplexFault"/>
<xsd:complexType name="ComplexFault">
<xsd:complexContent>
<xsd:extension base="ts:DerivedFault2">
<xsd:sequence>
<xsd:element name="d" type="xsd:int"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="getQuote">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="symbol" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getQuoteResult">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="result" type="xsd:float"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="throwFault">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="paramA" type="xsd:int"/>
<xsd:element name="paramB" type="xsd:string"/>
<xsd:element name="paramC" type="xsd:float"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="throwFaultReturn">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="return" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="returnFault">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="paramX" type="xsd:int"/>
<xsd:element name="paramY" type="xsd:string"/>
<xsd:element name="paramZ" type="xsd:float"/>
<xsd:element name="fault" type="ts:DerivedFault1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="returnFaultResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="fault" type="ts:DerivedFault1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</types>
<message name="SimpleFault">
<part name="faultMessage" element="ts:SimpleFault" />
</message>
<message name="InvalidTickerFault">
<part name="tickerFault" element="ts:InvalidTickerFault"/>
</message>
<message name="BaseFault">
<part name="baseFault" element="ts:BaseFault"/>
</message>
<message name="DerivedFault1">
<part name="theFault" element="ts:DerivedFault1" />
</message>
<message name="DerivedFault2">
<part name="theFault" element="ts:DerivedFault2" />
</message>
<message name="ComplexFault">
<part name="complexFault" element="ts:ComplexFault"/>
</message>
<message name="EqualFault">
<part name="theFault" element="ts:DerivedFault1" />
</message>
<message name="GetQuoteRequest">
<part name="tickerSymbol" element="ts:getQuote" />
</message>
<message name="GetQuoteResponse">
<part name="GetQuoteResult" element="ts:getQuoteResult" />
</message>
<message name="ThrowFaultRequest">
<part name="request" element="ts:throwFault" />
</message>
<message name="ThrowFaultResponse">
<part name="response" element="ts:throwFaultReturn"/>
</message>
<message name="ReturnFaultRequest">
<part name="req" element="ts:returnFault" />
</message>
<message name="ReturnFaultResponse">
<part name="return" element="ts:returnFaultResponse"/>
</message>
<portType name="FaultsServicePortType">
<operation name="getQuote">
<input message="tns:GetQuoteRequest"/>
<output message="tns:GetQuoteResponse"/>
<fault message="tns:InvalidTickerFault" name="InvalidTickerFault" />
<fault message="tns:SimpleFault" name="SimpleFault" />
<fault message="tns:DerivedFault1" name="Fault1"/>
<fault message="tns:DerivedFault2" name="Fault2"/>
<fault message="tns:BaseFault" name="Fault3"/>
</operation>
<operation name="throwFault">
<input message="tns:ThrowFaultRequest"/>
<output message="tns:ThrowFaultResponse"/>
<fault message="tns:BaseFault" name="baseFault" />
<fault message="tns:ComplexFault" name="complexFault" />
</operation>
<operation name="returnFault">
<input message="tns:ReturnFaultRequest"/>
<output message="tns:ReturnFaultResponse"/>
<fault message="tns:DerivedFault1" name="DerivedFault1" />
<fault message="tns:EqualFault" name="EqualFault" />
</operation>
</portType>
<binding name="FaultsServiceSoapBinding" type="tns:FaultsServicePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getQuote">
<soap:operation style="document"/>
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="InvalidTickerFault">
<soap:fault name="InvalidTickerFault" use="literal"/>
</fault>
<fault name="SimpleFault">
<soap:fault name="SimpleFault" use="literal"/>
</fault>
<fault name="Fault1">
<soap:fault name="Fault1" use="literal"/>
</fault>
<fault name="Fault2">
<soap:fault name="Fault2" use="literal"/>
</fault>
<fault name="Fault3">
<soap:fault name="Fault3" use="literal"/>
</fault>
</operation>
<operation name="throwFault">
<soap:operation style="document"/>
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="baseFault">
<soap:fault name="baseFault" use="literal"/>
</fault>
<fault name="complexFault">
<soap:fault name="complexFault" use="literal"/>
</fault>
</operation>
<operation name="returnFault">
<soap:operation style="document"/>
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="DerivedFault1">
<soap:fault name="DerivedFault1" use="literal"/>
</fault>
<fault name="EqualFault">
<soap:fault name="EqualFault" use="literal"/>
</fault>
</operation>
</binding>
<service name="FaultsService">
<port name="FaultsPort" binding="tns:FaultsServiceSoapBinding">
<soap:address location="http://localhost:9080/FaultsService/FaultsServiceSoapBindingImpl"/>
</port>
</service>
</definitions>