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