| <?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. |
| |
| --> |
| <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://customerservice.example.com/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="CustomerServiceService" targetNamespace="http://customerservice.example.com/"> |
| <wsdl:types> |
| <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://customerservice.example.com/" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://customerservice.example.com/"> |
| <xs:element name="getCustomersByName" type="tns:getCustomersByName"/> |
| <xs:element name="getCustomersByNameResponse" type="tns:getCustomersByNameResponse"/> |
| <xs:element name="updateCustomer" type="tns:updateCustomer"/> |
| <xs:complexType name="updateCustomer"> |
| <xs:sequence> |
| <xs:element minOccurs="0" name="customer" type="tns:customer"/> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="customer"> |
| <xs:sequence> |
| <xs:element name="customerId" type="xs:int"/> |
| <xs:element minOccurs="0" name="name" type="xs:string"/> |
| <xs:element maxOccurs="unbounded" minOccurs="0" name="address" nillable="true" type="xs:string"/> |
| <xs:element minOccurs="0" name="numOrders" type="xs:int"/> |
| <xs:element name="revenue" type="xs:double"/> |
| <xs:element minOccurs="0" name="test" type="xs:decimal"/> |
| <xs:element minOccurs="0" name="birthDate" type="xs:date"/> |
| <xs:element minOccurs="0" name="type" type="tns:customerType"/> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="getCustomersByName"> |
| <xs:sequence> |
| <xs:element name="name"> |
| <xs:simpleType> |
| <xs:restriction base="xs:string"> |
| <xs:minLength value="2"/> |
| <xs:maxLength value="15"/> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="getCustomersByNameResponse"> |
| <xs:sequence> |
| <xs:element maxOccurs="unbounded" minOccurs="0" name="return" type="tns:customer"/> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:simpleType name="customerType"> |
| <xs:restriction base="xs:string"> |
| <xs:enumeration value="PRIVATE"/> |
| <xs:enumeration value="BUSINESS"/> |
| </xs:restriction> |
| </xs:simpleType> |
| <xs:element name="NoSuchCustomer" type="tns:NoSuchCustomer"/> |
| <xs:complexType name="NoSuchCustomer"> |
| <xs:sequence> |
| <xs:element name="customerName" nillable="true" type="xs:string"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:schema> |
| </wsdl:types> |
| <wsdl:message name="getCustomersByNameResponse"> |
| <wsdl:part name="parameters" element="tns:getCustomersByNameResponse"/> |
| </wsdl:message> |
| <wsdl:message name="getCustomersByName"> |
| <wsdl:part name="parameters" element="tns:getCustomersByName"/> |
| </wsdl:message> |
| <wsdl:message name="updateCustomer"> |
| <wsdl:part name="parameters" element="tns:updateCustomer"/> |
| </wsdl:message> |
| <wsdl:message name="NoSuchCustomerException"> |
| <wsdl:part name="NoSuchCustomerException" element="tns:NoSuchCustomer"/> |
| </wsdl:message> |
| <wsdl:portType name="CustomerService"> |
| <wsdl:operation name="updateCustomer"> |
| <wsdl:input name="updateCustomer" message="tns:updateCustomer"/> |
| </wsdl:operation> |
| <wsdl:operation name="getCustomersByName"> |
| <wsdl:input name="getCustomersByName" message="tns:getCustomersByName"/> |
| <wsdl:output name="getCustomersByNameResponse" message="tns:getCustomersByNameResponse"/> |
| <wsdl:fault name="NoSuchCustomerException" message="tns:NoSuchCustomerException"/> |
| </wsdl:operation> |
| </wsdl:portType> |
| <wsdl:binding name="CustomerServiceServiceSoapBinding" type="tns:CustomerService"> |
| <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> |
| <wsdl:operation name="updateCustomer"> |
| <soap:operation soapAction="" style="document"/> |
| <wsdl:input name="updateCustomer"> |
| <soap:body use="literal"/> |
| </wsdl:input> |
| </wsdl:operation> |
| <wsdl:operation name="getCustomersByName"> |
| <soap:operation soapAction="" style="document"/> |
| <wsdl:input name="getCustomersByName"> |
| <soap:body use="literal"/> |
| </wsdl:input> |
| <wsdl:output name="getCustomersByNameResponse"> |
| <soap:body use="literal"/> |
| </wsdl:output> |
| <wsdl:fault name="NoSuchCustomerException"> |
| <soap:fault name="NoSuchCustomerException" use="literal"/> |
| </wsdl:fault> |
| </wsdl:operation> |
| </wsdl:binding> |
| <wsdl:service name="CustomerServiceService"> |
| <wsdl:port name="CustomerServicePort" binding="tns:CustomerServiceServiceSoapBinding"> |
| <soap:address location="http://localhost:8080/services/customers"/> |
| </wsdl:port> |
| </wsdl:service> |
| </wsdl:definitions> |