blob: 93988329cb80f17126ed7b8d1b4f332464f529fe [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.
-->
<wsdl:definitions name="CreditCardPayment" targetNamespace="http://www.example.com/CreditCardPayment/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://www.example.com/CreditCardPayment/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.com/CreditCardPayment/"
xmlns:tns="http://www.example.com/CreditCardPayment/">
<!-- https://jaxb.dev.java.net/issues/show_bug.cgi?id=518 -->
<!-- I have to change the complex types to be annoymous -->
<xsd:element name="authorize">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="CreditCard" type="tns:CreditCardDetailsType"></xsd:element>
<xsd:element name="Amount" type="xsd:float"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="authorizeResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Status" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="CreditCardDetailsType">
<xsd:sequence>
<xsd:element name="CreditCardType" type="tns:CreditCardTypeType" minOccurs="0" />
<xsd:element name="CreditCardNumber" type="xsd:string" minOccurs="0" />
<xsd:element name="ExpMonth" type="xsd:int" minOccurs="0" />
<xsd:element name="ExpYear" type="xsd:int" minOccurs="0" />
<xsd:element name="CardOwner" type="tns:PayerType" minOccurs="0" />
<xsd:element name="CVV2" type="xsd:string" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="CreditCardTypeType">
<xsd:restriction base="xsd:token">
<xsd:enumeration value="Visa" />
<xsd:enumeration value="MasterCard" />
<xsd:enumeration value="Discover" />
<xsd:enumeration value="Amex" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="PayerType">
<xsd:sequence>
<xsd:element name="Name" type="xsd:string" />
<xsd:element name="Address" type="tns:AddressType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AddressType">
<xsd:sequence>
<xsd:element name="Street" type="xsd:string" />
<xsd:element name="City" type="xsd:string" />
<xsd:element name="State" type="xsd:string" />
<xsd:element name="ZipCode" type="xsd:string" />
<xsd:element name="HomePhone" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="authorizeFault">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="errorCode" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="AuthorizeRequest">
<wsdl:part name="parameters" element="tns:authorize"></wsdl:part>
</wsdl:message>
<wsdl:message name="AuthorizeResponse">
<wsdl:part name="parameters" element="tns:authorizeResponse"></wsdl:part>
</wsdl:message>
<wsdl:message name="AuthorizeFault">
<wsdl:part name="parameters" element="tns:authorizeFault"></wsdl:part>
</wsdl:message>
<wsdl:portType name="CreditCardPayment">
<wsdl:operation name="authorize">
<wsdl:input message="tns:AuthorizeRequest"></wsdl:input>
<wsdl:output message="tns:AuthorizeResponse"></wsdl:output>
<wsdl:fault name="authorizationFailure" message="tns:AuthorizeFault"></wsdl:fault>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="CreditCardPaymentBinding" type="tns:CreditCardPayment">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="authorize">
<soap:operation soapAction="http://www.example.com/CreditCardPayment/authorize" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="authorizationFailure">
<soap:fault name="authorizationFailure" use="literal" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="CreditCardPaymentService">
<wsdl:port name="CreditCardPaymentPort" binding="tns:CreditCardPaymentBinding">
<soap:address location="http://localhost:8080/CreditCardPayment" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>