You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Srinath Perera (JIRA)" <ji...@apache.org> on 2005/06/23 05:20:11 UTC
[jira] Assigned: (AXIS2-25) WSDL parsing issue.
[ http://issues.apache.org/jira/browse/AXIS2-25?page=all ]
Srinath Perera reassigned AXIS2-25:
-----------------------------------
Assign To: Chathura Herath (was: Davanum Srinivas)
> WSDL parsing issue.
> -------------------
>
> Key: AXIS2-25
> URL: http://issues.apache.org/jira/browse/AXIS2-25
> Project: Apache Axis 2.0 (Axis2)
> Type: Bug
> Components: wsdl
> Environment: NA
> Reporter: Chathura Herath
> Assignee: Chathura Herath
> Attachments: BindingOperationTest.java, BookQuote.wsdl, patch.txt
>
> The issue arrives when the optional WSDL Binding Operation message references(which are optional) does not match with the Operations message references. Example.. WSDL
> ......................................................................................
> <?xml version="1.0" encoding="UTF-8"?>
> <!--
> This is the main description file for the web service.
> It is used to generate some code, which is used by client and server.
> The data types are based on the XML Schema for license files, namely licenses.xsd. This file
> is imported directly into the types definition of this web server description language file.
> @author mhaller
> -->
> <wsdl:definitions xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:impl="http://www.innovations.de/2005/v1/XMLLicenseSchema#Intf"
> xmlns:inno="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> xmlns:intf="http://www.innovations.de/2005/v1/XMLLicenseSchema#Impl"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema#Impl">
>
> <!-- Declare the custom datatypes used in the license server web service -->
> <wsdl:types>
> <xsd:schema targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema">
> <!-- Import the license datatypes schema file -->
> <xsd:import schemaLocation="E:\licenses.xsd" namespace="http://www.innovations.de/2005/v1/XMLLicenseSchema"/>
> </xsd:schema>
> </wsdl:types>
>
>
>
> <!-- The declarations of the messages. There are two types of messages:
> Request-Messages which are sent from the client to the server.
> And Response-Messages which are sent from the server to the client.
> The message have "parts" - something like wrappers for parameters.
> The parts are declared below. -->
> <!-- The QueryLicense pair
> IN: A string with a list of features
> OUT: An object of type Licenses, which is a container for LicenseType objects -->
> <wsdl:message name="QueryLicensesRequest">
> <wsdl:part name="Features" type="xsd:string"/>
> </wsdl:message>
> <wsdl:message name="QueryLicensesResponse">
> <wsdl:part name="QueryLicensesReturn" type="inno:Licenses"/>
> </wsdl:message>
> <!-- Request a single license -->
> <wsdl:message name="RequestLicenseResponse">
> <wsdl:part name="RequestLicenseReturn" type="inno:License"/>
> </wsdl:message>
> <wsdl:message name="RequestLicenseRequest">
> <wsdl:part name="UniqueIdentifier" type="xsd:string"/>
> </wsdl:message>
> <!-- Free or unlock a license which was in use -->
> <wsdl:message name="FreeLicenseRequest">
> <wsdl:part name="UniqueIdentifier" type="xsd:string"/>
> </wsdl:message>
> <wsdl:message name="FreeLicenseResponse">
> <wsdl:part name="FreeLicenseReturn" type="xsd:boolean"/>
> </wsdl:message>
> <!-- Admin Messages -->
> <wsdl:message name="InstallLicenseRequest">
> <wsdl:part name="License" type="inno:License"/>
> </wsdl:message>
> <wsdl:message name="InstallLicenseResponse">
> <wsdl:part name="InstallLicenseReturn" type="xsd:boolean"/>
> </wsdl:message>
> <wsdl:message name="GetServerStatusRequest">
> </wsdl:message>
> <wsdl:message name="GetServerStatusResponse">
> <wsdl:part name="GetServerStatusReturn" type="inno:ServerStatus"/>
> </wsdl:message>
> <wsdl:message name="ReloadRequest">
> </wsdl:message>
> <wsdl:message name="ReloadResponse">
> </wsdl:message>
> <!-- The portType definition declares all the methods of the webserver
> and which messages it takes in from the client, and which messages it send out to the client. -->
> <wsdl:portType name="ILicenseServer">
> <wsdl:operation name="QueryLicenses" parameterOrder="Features">
> <wsdl:input message="intf:QueryLicensesRequest" name="QueryLicensesRequest"/>
> <wsdl:output message="intf:QueryLicensesResponse" name="QueryLicensesResponse"/>
> </wsdl:operation>
> <wsdl:operation name="RequestLicense" parameterOrder="UniqueIdentifier">
> <wsdl:input message="intf:RequestLicenseRequest" name="RequestLicenseRequest"/>
> <wsdl:output message="intf:RequestLicenseResponse" name="RequestLicenseResponse"/>
> </wsdl:operation>
> <wsdl:operation name="FreeLicense" parameterOrder="UniqueIdentifier">
> <wsdl:input message="intf:FreeLicenseRequest" name="FreeLicenseRequest"/>
> <wsdl:output message="intf:FreeLicenseResponse" name="FreeLicenseResponse"/>
> </wsdl:operation>
> <wsdl:operation name="InstallLicense" parameterOrder="License">
> <wsdl:input message="intf:InstallLicenseRequest" name="InstallLicenseRequest"/>
> <wsdl:output message="intf:InstallLicenseResponse" name="InstallLicenseResponse"/>
> </wsdl:operation>
> <wsdl:operation name="GetServerStatus">
> <wsdl:input message="intf:GetServerStatusRequest" name="GetServerStatusRequest"/>
> <wsdl:output message="intf:GetServerStatusResponse" name="GetServerStatusResponse"/>
> </wsdl:operation>
> <wsdl:operation name="Reload">
> <wsdl:input message="intf:ReloadRequest" name="ReloadRequest"/>
> <wsdl:output message="intf:ReloadResponse" name="ReloadResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <!-- The binding part of the WSDL file describes the transport implementation.
> Here, it's defined that the webservice can be accessed via HTTP protocol (or, to be more
> specific: via SOAP HTTP)
> The "document" style is used for interop, the "literal" use is the way how
> the parameters get wrapped (or not wrapped, in this case)
> Valid values for style are: "document" and "rpc", although there should also
> be "wrapped", which is a subtype of document. -->
> <wsdl:binding name="LicenseServerSoapBinding" type="intf:ILicenseServer">
> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="QueryLicenses">
> <wsdlsoap:operation soapAction=""/>
> <wsdl:input name="QueryLicensesRequest">
> <wsdlsoap:body use="literal"/>
> </wsdl:input>
> <wsdl:output name="QueryLicensesResponse">
> <wsdlsoap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="RequestLicense">
> <wsdlsoap:operation soapAction=""/>
> <wsdl:input name="RequestLicenseRequest">
> <wsdlsoap:body use="literal"/>
> </wsdl:input>
> <wsdl:output name="RequestLicenseResponse">
> <wsdlsoap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="FreeLicense">
> <wsdlsoap:operation soapAction=""/>
> <wsdl:input name="FreeLicenseRequest">
> <wsdlsoap:body use="literal"/>
> </wsdl:input>
> <wsdl:output name="FreeLicenseResponse">
> <wsdlsoap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="InstallLicense">
> <wsdlsoap:operation soapAction=""/>
> <wsdl:input name="InstallLicenseRequest">
> <wsdlsoap:body use="literal"/>
> </wsdl:input>
> <wsdl:output name="InstallLicenseResponse">
> <wsdlsoap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="GetServerStatus">
> <wsdlsoap:operation soapAction=""/>
> <wsdl:output name="GetServerStatusResponse">
> <wsdlsoap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="Reload">
> <wsdlsoap:operation soapAction=""/>
> </wsdl:operation>
> </wsdl:binding>
> <!-- The service definition just tells us the name of the service,
> and where (address) we can find it. As this is no public web service,
> we are not defining a full qualified domain name here, but a short hostname.
> Later, in the client, the endpoint hostname will be made changeable. -->
> <wsdl:service name="ILicenseServerService">
> <wsdl:port binding="intf:LicenseServerSoapBinding" name="LicenseServer">
> <wsdlsoap:address location="http://licenseserver:8080/licenseserver/services/LicenseServer"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
> ..............................................................................................................
> XSD
> <?xml version="1.0"?>
> <!--
> This schema defines all the custom datatypes for use in the license server communication.
> It represents the model for licenses, license containers, and the values a license can have.
> It is used by the WSDL file to generate code.
> It is used by the Castor codegenerator to generate model code.
> It is used by the license files to validate themselves.
> -->
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> xmlns:inno="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
> elementFormDefault="qualified">
> <!--
> Documentation
> -->
> <xsd:annotation>
> <xsd:documentation xml:lang="en">A XML Schema for License Key Information as replacement for
> legacy file-based software license keys. Copyright (c) 2005 Innovations
> Softwaretechnologie GmbH. </xsd:documentation>
> <xsd:documentation xml:lang="de">Ein XML Schema für Lizenzschlüssel, als Ersatz für das
> bestehende dateibasierte Lizenzformat. Copyright (c) 2005 Innovations
> Softwaretechnologie GmbH. </xsd:documentation>
> </xsd:annotation>
> <!-- Importing the XML Security Schema -->
>
>
> <!--
> This is the root element of all license files.
> <Licenses>
> <License>
> </License>
> <License>
> </License>
> <LogEntry>
> </LogEntry>
> </Licenses>
> -->
> <!-- The container type for license keys -->
> <xsd:element name="Licenses" type="inno:LicenseContainer"/>
> <xsd:complexType name="LicenseContainer">
> <xsd:sequence>
> <xsd:element name="License" minOccurs="0" maxOccurs="unbounded" type="inno:LicenseType"/>
> <xsd:element name="LogEntry" minOccurs="0" maxOccurs="unbounded" type="inno:LogEntryType"/>
> </xsd:sequence>
> </xsd:complexType>
> <!-- A named license key binds a license to a specific person -->
> <xsd:element name="NamedLicenseModel">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="Person" type="inno:Identity"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- A Node Locked License model locks a license to a specific machine -->
> <xsd:element name="NodeLockedLicenseModel">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="Node" type="inno:Identity"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- A Floating License can be used concurrently by an amount of users -->
> <xsd:element name="FloatingLicenseModel">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="ConcurrentDevices" type="xsd:int" minOccurs="1" maxOccurs="1"
> nillable="false"/>
> <xsd:element name="AllowMultipleInstances" type="xsd:boolean" minOccurs="0"
> maxOccurs="1" nillable="false"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- A Site license is only restricted to be used by employees by a single company -->
> <xsd:element name="SiteLicenseModel">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="Company" minOccurs="1" maxOccurs="1" type="inno:Identity"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- Time restricted license model -->
> <xsd:element name="TimeRestrictedLicenseModel">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element minOccurs="0" name="ValidAfter" type="xsd:date"/>
> <xsd:element minOccurs="0" name="ValidBefore" type="xsd:date"/>
> <xsd:element minOccurs="0" name="ReleaseDateBefore" type="xsd:date"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- The main License type includes signed information about the license key itself,
> meta information and optionally runtime-information -->
> <xsd:complexType name="LicenseType">
> <xsd:sequence>
> <!-- Very Important License Information -->
> <xsd:element name="SignedLicenseInfo" minOccurs="1">
> <xsd:complexType>
> <!-- This Id is used by XML Security to reference the signed element -->
> <xsd:sequence>
> <xsd:element name="Vendor" type="xsd:string"/>
> <xsd:element name="Application" type="xsd:string"/>
> <xsd:choice>
> <xsd:element ref="inno:NamedLicenseModel"/>
> <xsd:element ref="inno:NodeLockedLicenseModel"/>
> <xsd:element ref="inno:FloatingLicenseModel"/>
> <xsd:element ref="inno:SiteLicenseModel"/>
> <xsd:element ref="inno:TimeRestrictedLicenseModel"/>
> </xsd:choice>
> <!-- Extendable License Information -->
> <xsd:element name="Feature" maxOccurs="unbounded" minOccurs="0"
> type="inno:FeatureType"/>
> </xsd:sequence>
> <xsd:attribute name="Id" use="required" type="xsd:string"/>
> </xsd:complexType>
> </xsd:element>
> <!-- The position of the Digital Signature for this License -->
> <xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/>
> <!-- Additional License Information -->
> <xsd:element name="MetaInfo" minOccurs="0">
> <xsd:complexType>
> <xsd:sequence>
> <!-- Vendor/Application Information -->
> <xsd:element minOccurs="0" name="Description" type="xsd:string"/>
> <xsd:element minOccurs="0" name="Creation" type="xsd:date"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> <!-- Additional Runtime License Information -->
> <xsd:element name="RuntimeInfo" minOccurs="0">
> <xsd:complexType>
> <xsd:sequence>
> <!-- Server-related Runtime Information -->
> <xsd:element minOccurs="0" maxOccurs="1" name="Locked" type="xsd:boolean"/>
> <xsd:element minOccurs="0" maxOccurs="1" name="LockedByUser"
> type="xsd:string"/>
> <xsd:element minOccurs="0" maxOccurs="1" name="LockedSince" type="xsd:date"/>
> <xsd:element minOccurs="0" maxOccurs="1" name="LockedUntil" type="xsd:date"
> />
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> </xsd:sequence>
> </xsd:complexType>
> <!-- Error Codes -->
> <xsd:simpleType name="StatusCode">
> <xsd:annotation>
> <xsd:documentation>Status codes being used in logfile</xsd:documentation>
> </xsd:annotation>
> <xsd:restriction base="xsd:int">
> <xsd:enumeration value="200" id="STATUS_OK"/>
> <xsd:enumeration value="403" id="STATUS_ERR_NO_AUTH"/>
> <xsd:enumeration value="404" id="STATUS_ERR_NOT_FOUND"/>
> <xsd:enumeration value="500" id="STATUS_ERR_INTERNAL"/>
> </xsd:restriction>
> </xsd:simpleType>
> <!-- Represents an identity, namely a person, a company or a machine -->
> <xsd:complexType name="Identity">
> <xsd:sequence>
> <xsd:element name="Name" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> <xsd:element name="Address" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> <xsd:element name="EMail" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> <xsd:element name="Hostname" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> <xsd:element name="IPAddress" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> <xsd:element name="MACAddress" type="xsd:string" minOccurs="0" maxOccurs="1"/>
> </xsd:sequence>
> </xsd:complexType>
> <!-- This is a complex type, which represents a map (key and value pairs) for
> defining features of a license. -->
> <xsd:complexType name="FeatureType">
> <xsd:attribute name="name" type="xsd:string" use="required"/>
> <xsd:attribute name="value" type="xsd:string" use="required"/>
> <!-- This can be used to differentiate content types, e.g.
> to use some basic scripting language like:
> <Feature name="majorVersion" type="script" value=">=3 && <= 4"/>
> -->
> <xsd:attribute name="type" type="xsd:string" default="plain" use="optional"/>
> </xsd:complexType>
> <!--
> Admin-Level: Server Management
> -->
> <xsd:complexType name="ServerStatus">
> <xsd:sequence>
> <xsd:element name="VersionString" maxOccurs="1" minOccurs="0" type="xsd:string"/>
> <xsd:element name="NumberLicenses" maxOccurs="1" minOccurs="0" type="xsd:int"/>
> <xsd:element name="NumberQueries" maxOccurs="1" minOccurs="0" type="xsd:long"/>
> <xsd:element name="NumberRequests" maxOccurs="1" minOccurs="0" type="xsd:long"/>
> <xsd:element name="RegistreeString" maxOccurs="1" minOccurs="0" type="xsd:string"/>
> <xsd:element name="UptimeSince" maxOccurs="1" minOccurs="0" type="xsd:duration"/>
> </xsd:sequence>
> </xsd:complexType>
> <!-- Server Stuff -->
> <xsd:complexType name="LogEntryType">
> <xsd:sequence>
> <xsd:element name="TimeStamp" type="xsd:date"/>
> <xsd:element name="RemoteUser" type="xsd:string"/>
> <xsd:element name="RemoteHost" type="xsd:string"/>
> <xsd:element name="StatusCode" type="inno:StatusCode"/>
> <xsd:element name="LicenseID" type="xsd:string"/>
> </xsd:sequence>
> </xsd:complexType>
>
> </xsd:schema>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
RE: [jira] Assigned: (AXIS2-25) WSDL parsing issue.
Posted by Chathura Herath <ch...@opensource.lk>.
Srinath,
Please close this JIRA, it was fixed and the patch and the test case
attached.
Chathura
> -----Original Message-----
> From: Srinath Perera (JIRA) [mailto:jira@apache.org]
> Sent: Thursday, June 23, 2005 9:20 AM
> To: axis-dev@ws.apache.org
> Subject: [jira] Assigned: (AXIS2-25) WSDL parsing issue.
>
> [ http://issues.apache.org/jira/browse/AXIS2-25?page=all ]
>
> Srinath Perera reassigned AXIS2-25:
> -----------------------------------
>
> Assign To: Chathura Herath (was: Davanum Srinivas)
>
> > WSDL parsing issue.
> > -------------------
> >
> > Key: AXIS2-25
> > URL: http://issues.apache.org/jira/browse/AXIS2-25
> > Project: Apache Axis 2.0 (Axis2)
> > Type: Bug
> > Components: wsdl
> > Environment: NA
> > Reporter: Chathura Herath
> > Assignee: Chathura Herath
> > Attachments: BindingOperationTest.java, BookQuote.wsdl, patch.txt
> >
> > The issue arrives when the optional WSDL Binding Operation message
> references(which are optional) does not match with the Operations message
> references. Example.. WSDL
> >
> ..........................................................................
> ............
> > <?xml version="1.0" encoding="UTF-8"?>
> > <!--
> > This is the main description file for the web service.
> > It is used to generate some code, which is used by client and server.
> > The data types are based on the XML Schema for license files, namely
> licenses.xsd. This file
> > is imported directly into the types definition of this web server
> description language file.
> > @author mhaller
> > -->
> > <wsdl:definitions xmlns:apachesoap="http://xml.apache.org/xml-soap"
> > xmlns:impl="http://www.innovations.de/2005/v1/XMLLicenseSchema#Intf"
> > xmlns:inno="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> > xmlns:intf="http://www.innovations.de/2005/v1/XMLLicenseSchema#Impl"
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> > xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
> > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> > xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >
> targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema#Impl">
> >
> > <!-- Declare the custom datatypes used in the license server web
> service -->
> > <wsdl:types>
> > <xsd:schema
> targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema">
> > <!-- Import the license datatypes schema file -->
> > <xsd:import schemaLocation="E:\licenses.xsd"
> namespace="http://www.innovations.de/2005/v1/XMLLicenseSchema"/>
> > </xsd:schema>
> > </wsdl:types>
> >
> >
> >
> > <!-- The declarations of the messages. There are two types of
> messages:
> > Request-Messages which are sent from the client to the server.
> > And Response-Messages which are sent from the server to the client.
> > The message have "parts" - something like wrappers for parameters.
> > The parts are declared below. -->
> > <!-- The QueryLicense pair
> > IN: A string with a list of features
> > OUT: An object of type Licenses, which is a container for LicenseType
> objects -->
> > <wsdl:message name="QueryLicensesRequest">
> > <wsdl:part name="Features" type="xsd:string"/>
> > </wsdl:message>
> > <wsdl:message name="QueryLicensesResponse">
> > <wsdl:part name="QueryLicensesReturn" type="inno:Licenses"/>
> > </wsdl:message>
> > <!-- Request a single license -->
> > <wsdl:message name="RequestLicenseResponse">
> > <wsdl:part name="RequestLicenseReturn" type="inno:License"/>
> > </wsdl:message>
> > <wsdl:message name="RequestLicenseRequest">
> > <wsdl:part name="UniqueIdentifier" type="xsd:string"/>
> > </wsdl:message>
> > <!-- Free or unlock a license which was in use -->
> > <wsdl:message name="FreeLicenseRequest">
> > <wsdl:part name="UniqueIdentifier" type="xsd:string"/>
> > </wsdl:message>
> > <wsdl:message name="FreeLicenseResponse">
> > <wsdl:part name="FreeLicenseReturn" type="xsd:boolean"/>
> > </wsdl:message>
> > <!-- Admin Messages -->
> > <wsdl:message name="InstallLicenseRequest">
> > <wsdl:part name="License" type="inno:License"/>
> > </wsdl:message>
> > <wsdl:message name="InstallLicenseResponse">
> > <wsdl:part name="InstallLicenseReturn" type="xsd:boolean"/>
> > </wsdl:message>
> > <wsdl:message name="GetServerStatusRequest">
> > </wsdl:message>
> > <wsdl:message name="GetServerStatusResponse">
> > <wsdl:part name="GetServerStatusReturn" type="inno:ServerStatus"/>
> > </wsdl:message>
> > <wsdl:message name="ReloadRequest">
> > </wsdl:message>
> > <wsdl:message name="ReloadResponse">
> > </wsdl:message>
> > <!-- The portType definition declares all the methods of the webserver
> > and which messages it takes in from the client, and which messages it
> send out to the client. -->
> > <wsdl:portType name="ILicenseServer">
> > <wsdl:operation name="QueryLicenses" parameterOrder="Features">
> > <wsdl:input message="intf:QueryLicensesRequest"
> name="QueryLicensesRequest"/>
> > <wsdl:output message="intf:QueryLicensesResponse"
> name="QueryLicensesResponse"/>
> > </wsdl:operation>
> > <wsdl:operation name="RequestLicense"
> parameterOrder="UniqueIdentifier">
> > <wsdl:input message="intf:RequestLicenseRequest"
> name="RequestLicenseRequest"/>
> > <wsdl:output message="intf:RequestLicenseResponse"
> name="RequestLicenseResponse"/>
> > </wsdl:operation>
> > <wsdl:operation name="FreeLicense"
> parameterOrder="UniqueIdentifier">
> > <wsdl:input message="intf:FreeLicenseRequest"
> name="FreeLicenseRequest"/>
> > <wsdl:output message="intf:FreeLicenseResponse"
> name="FreeLicenseResponse"/>
> > </wsdl:operation>
> > <wsdl:operation name="InstallLicense" parameterOrder="License">
> > <wsdl:input message="intf:InstallLicenseRequest"
> name="InstallLicenseRequest"/>
> > <wsdl:output message="intf:InstallLicenseResponse"
> name="InstallLicenseResponse"/>
> > </wsdl:operation>
> > <wsdl:operation name="GetServerStatus">
> > <wsdl:input message="intf:GetServerStatusRequest"
> name="GetServerStatusRequest"/>
> > <wsdl:output message="intf:GetServerStatusResponse"
> name="GetServerStatusResponse"/>
> > </wsdl:operation>
> > <wsdl:operation name="Reload">
> > <wsdl:input message="intf:ReloadRequest" name="ReloadRequest"/>
> > <wsdl:output message="intf:ReloadResponse" name="ReloadResponse"/>
> > </wsdl:operation>
> > </wsdl:portType>
> > <!-- The binding part of the WSDL file describes the transport
> implementation.
> > Here, it's defined that the webservice can be accessed via HTTP
> protocol (or, to be more
> > specific: via SOAP HTTP)
> > The "document" style is used for interop, the "literal" use is the way
> how
> > the parameters get wrapped (or not wrapped, in this case)
> > Valid values for style are: "document" and "rpc", although there
> should also
> > be "wrapped", which is a subtype of document. -->
> > <wsdl:binding name="LicenseServerSoapBinding"
> type="intf:ILicenseServer">
> > <wsdlsoap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/>
> > <wsdl:operation name="QueryLicenses">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:input name="QueryLicensesRequest">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:input>
> > <wsdl:output name="QueryLicensesResponse">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > <wsdl:operation name="RequestLicense">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:input name="RequestLicenseRequest">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:input>
> > <wsdl:output name="RequestLicenseResponse">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > <wsdl:operation name="FreeLicense">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:input name="FreeLicenseRequest">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:input>
> > <wsdl:output name="FreeLicenseResponse">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > <wsdl:operation name="InstallLicense">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:input name="InstallLicenseRequest">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:input>
> > <wsdl:output name="InstallLicenseResponse">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > <wsdl:operation name="GetServerStatus">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:output name="GetServerStatusResponse">
> > <wsdlsoap:body use="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > <wsdl:operation name="Reload">
> > <wsdlsoap:operation soapAction=""/>
> > </wsdl:operation>
> > </wsdl:binding>
> > <!-- The service definition just tells us the name of the service,
> > and where (address) we can find it. As this is no public web service,
> > we are not defining a full qualified domain name here, but a short
> hostname.
> > Later, in the client, the endpoint hostname will be made changeable. -
> ->
> > <wsdl:service name="ILicenseServerService">
> > <wsdl:port binding="intf:LicenseServerSoapBinding"
> name="LicenseServer">
> > <wsdlsoap:address
> location="http://licenseserver:8080/licenseserver/services/LicenseServer"/
> >
> > </wsdl:port>
> > </wsdl:service>
> > </wsdl:definitions>
> >
> ..........................................................................
> ....................................
> > XSD
> > <?xml version="1.0"?>
> > <!--
> > This schema defines all the custom datatypes for use in the license
> server communication.
> > It represents the model for licenses, license containers, and the values
> a license can have.
> > It is used by the WSDL file to generate code.
> > It is used by the Castor codegenerator to generate model code.
> > It is used by the license files to validate themselves.
> > -->
> > <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> > targetNamespace="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> > xmlns:inno="http://www.innovations.de/2005/v1/XMLLicenseSchema"
> > xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
> > elementFormDefault="qualified">
> > <!--
> > Documentation
> > -->
> > <xsd:annotation>
> > <xsd:documentation xml:lang="en">A XML Schema for License Key
> Information as replacement for
> > legacy file-based software license keys. Copyright (c) 2005
> Innovations
> > Softwaretechnologie GmbH. </xsd:documentation>
> > <xsd:documentation xml:lang="de">Ein XML Schema für
> Lizenzschlüssel, als Ersatz für das
> > bestehende dateibasierte Lizenzformat. Copyright (c) 2005
> Innovations
> > Softwaretechnologie GmbH. </xsd:documentation>
> > </xsd:annotation>
> > <!-- Importing the XML Security Schema -->
> >
> >
> > <!--
> > This is the root element of all license files.
> > <Licenses>
> > <License>
> > </License>
> > <License>
> > </License>
> > <LogEntry>
> > </LogEntry>
> > </Licenses>
> > -->
> > <!-- The container type for license keys -->
> > <xsd:element name="Licenses" type="inno:LicenseContainer"/>
> > <xsd:complexType name="LicenseContainer">
> > <xsd:sequence>
> > <xsd:element name="License" minOccurs="0"
> maxOccurs="unbounded" type="inno:LicenseType"/>
> > <xsd:element name="LogEntry" minOccurs="0"
> maxOccurs="unbounded" type="inno:LogEntryType"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > <!-- A named license key binds a license to a specific person -->
> > <xsd:element name="NamedLicenseModel">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element name="Person" type="inno:Identity"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- A Node Locked License model locks a license to a specific
> machine -->
> > <xsd:element name="NodeLockedLicenseModel">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element name="Node" type="inno:Identity"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- A Floating License can be used concurrently by an amount of
> users -->
> > <xsd:element name="FloatingLicenseModel">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element name="ConcurrentDevices" type="xsd:int"
> minOccurs="1" maxOccurs="1"
> > nillable="false"/>
> > <xsd:element name="AllowMultipleInstances"
> type="xsd:boolean" minOccurs="0"
> > maxOccurs="1" nillable="false"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- A Site license is only restricted to be used by employees by a
> single company -->
> > <xsd:element name="SiteLicenseModel">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element name="Company" minOccurs="1" maxOccurs="1"
> type="inno:Identity"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- Time restricted license model -->
> > <xsd:element name="TimeRestrictedLicenseModel">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element minOccurs="0" name="ValidAfter"
> type="xsd:date"/>
> > <xsd:element minOccurs="0" name="ValidBefore"
> type="xsd:date"/>
> > <xsd:element minOccurs="0" name="ReleaseDateBefore"
> type="xsd:date"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- The main License type includes signed information about the
> license key itself,
> > meta information and optionally runtime-information -->
> > <xsd:complexType name="LicenseType">
> > <xsd:sequence>
> > <!-- Very Important License Information -->
> > <xsd:element name="SignedLicenseInfo" minOccurs="1">
> > <xsd:complexType>
> > <!-- This Id is used by XML Security to reference
> the signed element -->
> > <xsd:sequence>
> > <xsd:element name="Vendor" type="xsd:string"/>
> > <xsd:element name="Application"
> type="xsd:string"/>
> > <xsd:choice>
> > <xsd:element ref="inno:NamedLicenseModel"/>
> > <xsd:element
> ref="inno:NodeLockedLicenseModel"/>
> > <xsd:element
> ref="inno:FloatingLicenseModel"/>
> > <xsd:element ref="inno:SiteLicenseModel"/>
> > <xsd:element
> ref="inno:TimeRestrictedLicenseModel"/>
> > </xsd:choice>
> > <!-- Extendable License Information -->
> > <xsd:element name="Feature"
> maxOccurs="unbounded" minOccurs="0"
> > type="inno:FeatureType"/>
> > </xsd:sequence>
> > <xsd:attribute name="Id" use="required"
> type="xsd:string"/>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- The position of the Digital Signature for this License
> -->
> > <xsd:element ref="dsig:Signature" minOccurs="0"
> maxOccurs="unbounded"/>
> > <!-- Additional License Information -->
> > <xsd:element name="MetaInfo" minOccurs="0">
> > <xsd:complexType>
> > <xsd:sequence>
> > <!-- Vendor/Application Information -->
> > <xsd:element minOccurs="0" name="Description"
> type="xsd:string"/>
> > <xsd:element minOccurs="0" name="Creation"
> type="xsd:date"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <!-- Additional Runtime License Information -->
> > <xsd:element name="RuntimeInfo" minOccurs="0">
> > <xsd:complexType>
> > <xsd:sequence>
> > <!-- Server-related Runtime Information -->
> > <xsd:element minOccurs="0" maxOccurs="1"
> name="Locked" type="xsd:boolean"/>
> > <xsd:element minOccurs="0" maxOccurs="1"
> name="LockedByUser"
> > type="xsd:string"/>
> > <xsd:element minOccurs="0" maxOccurs="1"
> name="LockedSince" type="xsd:date"/>
> > <xsd:element minOccurs="0" maxOccurs="1"
> name="LockedUntil" type="xsd:date"
> > />
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > </xsd:sequence>
> > </xsd:complexType>
> > <!-- Error Codes -->
> > <xsd:simpleType name="StatusCode">
> > <xsd:annotation>
> > <xsd:documentation>Status codes being used in
> logfile</xsd:documentation>
> > </xsd:annotation>
> > <xsd:restriction base="xsd:int">
> > <xsd:enumeration value="200" id="STATUS_OK"/>
> > <xsd:enumeration value="403" id="STATUS_ERR_NO_AUTH"/>
> > <xsd:enumeration value="404" id="STATUS_ERR_NOT_FOUND"/>
> > <xsd:enumeration value="500" id="STATUS_ERR_INTERNAL"/>
> > </xsd:restriction>
> > </xsd:simpleType>
> > <!-- Represents an identity, namely a person, a company or a machine
> -->
> > <xsd:complexType name="Identity">
> > <xsd:sequence>
> > <xsd:element name="Name" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> > <xsd:element name="Address" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> > <xsd:element name="EMail" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> > <xsd:element name="Hostname" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> > <xsd:element name="IPAddress" type="xsd:string"
> minOccurs="0" maxOccurs="1"/>
> > <xsd:element name="MACAddress" type="xsd:string"
> minOccurs="0" maxOccurs="1"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > <!-- This is a complex type, which represents a map (key and value
> pairs) for
> > defining features of a license. -->
> > <xsd:complexType name="FeatureType">
> > <xsd:attribute name="name" type="xsd:string" use="required"/>
> > <xsd:attribute name="value" type="xsd:string" use="required"/>
> > <!-- This can be used to differentiate content types, e.g.
> > to use some basic scripting language like:
> > <Feature name="majorVersion" type="script" value=">=3
> && <= 4"/>
> > -->
> > <xsd:attribute name="type" type="xsd:string" default="plain"
> use="optional"/>
> > </xsd:complexType>
> > <!--
> > Admin-Level: Server Management
> > -->
> > <xsd:complexType name="ServerStatus">
> > <xsd:sequence>
> > <xsd:element name="VersionString" maxOccurs="1"
> minOccurs="0" type="xsd:string"/>
> > <xsd:element name="NumberLicenses" maxOccurs="1"
> minOccurs="0" type="xsd:int"/>
> > <xsd:element name="NumberQueries" maxOccurs="1"
> minOccurs="0" type="xsd:long"/>
> > <xsd:element name="NumberRequests" maxOccurs="1"
> minOccurs="0" type="xsd:long"/>
> > <xsd:element name="RegistreeString" maxOccurs="1"
> minOccurs="0" type="xsd:string"/>
> > <xsd:element name="UptimeSince" maxOccurs="1" minOccurs="0"
> type="xsd:duration"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > <!-- Server Stuff -->
> > <xsd:complexType name="LogEntryType">
> > <xsd:sequence>
> > <xsd:element name="TimeStamp" type="xsd:date"/>
> > <xsd:element name="RemoteUser" type="xsd:string"/>
> > <xsd:element name="RemoteHost" type="xsd:string"/>
> > <xsd:element name="StatusCode" type="inno:StatusCode"/>
> > <xsd:element name="LicenseID" type="xsd:string"/>
> > </xsd:sequence>
> > </xsd:complexType>
> >
> > </xsd:schema>
>
> --
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one of the administrators:
> http://issues.apache.org/jira/secure/Administrators.jspa
> -
> For more information on JIRA, see:
> http://www.atlassian.com/software/jira
>