| <?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> |