axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <anna.veirau...@sungard.com>
Subject WSDL/Generated WSDL Discrepencies...
Date Wed, 15 Jun 2005 20:32:17 GMT
Heya,

	I'm fairly new to Axis, so hopefully I'm not missing something too obvious or have bad search
skills(I've been searching and researching and haven't come up with an answer).  I managed
to get an example service using Axis/Castor (the example from the IBM site) working using
the generated jars; a client java application using the generated client classes returns the
right information.  Per the example, there is an .xsd file whose namespace is imported into
the WSDL.  However, when my coworker captures the generated WSDL from the server using XMLSpy
and .Net's wsdl.exe, it cannot define the return type (quote).  Is there some way to expose
the external schema file via the generated WSDL?  We've noticed that if we imbed the information
from the XSD file directly into the WSDL everything is all good, but I'm guessing that Castor
requires the use of a separate Schema file.  I've included the files below for reference.


			Thanks,
				Anna

XSD
===
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema 
	xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
	targetNamespace="http://w3.ibm.com/schemas/services/stockquote"
	xmlns="http://w3.ibm.com/schemas/services/stockquote">
	
	<xsd:element name="quote">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="symbol" type="xsd:string"/>
				<xsd:element name="volume" type="xsd:integer"/>
				<xsd:element name="lastTrade" type="lastTradeType"/>
				<xsd:element name="change" type="changeType"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:complexType name="changeType">
		<xsd:sequence>
			<xsd:element name="dollar" type="xsd:float"/>	
			<xsd:element name="percent" type="xsd:float"/>
			<xsd:element name="positive" type="xsd:boolean"/>	
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="lastTradeType">
		<xsd:sequence>
			<xsd:element name="price" type="xsd:float"/>
			<xsd:element name="date" type="xsd:long"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Methods signatures -->
	<xsd:element name="getStockQuote">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="symbol" type="xsd:string"/>
			</xsd:sequence>	
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="getStockQuoteResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="quote" />
			</xsd:sequence>	
		</xsd:complexType>
	</xsd:element>

</xsd:schema>


WSDL (ORIGINAL FILE)
=====
<definitions targetNamespace="http://w3.ibm.com/schemas/services/stockquote/wsdl"
	xmlns="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:tns="http://w3.ibm.com/schemas/services/stockquote/wsdl" 
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:types="http://w3.ibm.com/schemas/services/stockquote"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	>
	<types>
    	<xsd:schema targetNamespace="http://w3.ibm.com/schemas/services/stockquote/wsdl"
                xmlns:types="xmlns:types"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      		<xsd:import namespace="http://w3.ibm.com/schemas/services/stockquote" 
          		schemaLocation="../xsd/StockQuote.xsd"/>
          </xsd:schema>
	</types>
	<message name="getStockQuoteReq">
		<part name="parameters" element="types:getStockQuote" />
	</message>

	<message name="getStockQuoteResp">
		<part name="parameters" element="types:getStockQuoteResponse" />
	</message>

	<portType name="StockQuotePortType">
		<operation name="getStockQuote">
			<input message="tns:getStockQuoteReq" />
			<output message="tns:getStockQuoteResp" />
		</operation>
	</portType>

	<binding name="StockQuoteSOAPBinding" type="tns:StockQuotePortType">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
		<operation name="getStockQuote">
			<soap:operation style="document" soapAction="getStockQuote" />
			<input>
				<soap:body use="literal" />
			</input>
			<output>
				<soap:body use="literal" />
			</output>
		</operation>
	</binding>

	<service name="StockQuoteService">
		<port name="StockQuoteSOAPPort" binding="tns:StockQuoteSOAPBinding">
			<soap:address location="http://10.10.10.85/axis/services/StockQuoteSOAPPort" />
		</port>
	</service>

</definitions>


GENERATED WSLD (USING ?WSDL)
==============================
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://w3.ibm.com/schemas/services/stockquote/wsdl"
xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://w3.ibm.com/schemas/services/stockquote/wsdl"
xmlns:intf="http://w3.ibm.com/schemas/services/stockquote/wsdl" xmlns:tns1="http://w3.ibm.com/schemas/services/stockquote"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.2
Built on May 03, 2005 (02:20:24 EDT)-->
 <wsdl:types>
  <schema elementFormDefault="qualified" targetNamespace="http://w3.ibm.com/schemas/services/stockquote"
xmlns="http://www.w3.org/2001/XMLSchema">
   <element name="getStockQuote">
    <complexType>
     <sequence>
      <element name="symbol" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getStockQuoteResponse">
    <complexType>
     <sequence>
      <element name="quote" type="tns1:quote"/>
     </sequence>
    </complexType>
   </element>
  </schema>
 </wsdl:types>

   <wsdl:message name="getStockQuoteResponse">

      <wsdl:part element="tns1:getStockQuoteResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getStockQuoteRequest">

      <wsdl:part element="tns1:getStockQuote" name="parameters"/>

   </wsdl:message>

   <wsdl:portType name="StockQuotePortType">

      <wsdl:operation name="getStockQuote">

         <wsdl:input message="impl:getStockQuoteRequest" name="getStockQuoteRequest"/>

         <wsdl:output message="impl:getStockQuoteResponse" name="getStockQuoteResponse"/>

      </wsdl:operation>

   </wsdl:portType>

   <wsdl:binding name="StockQuoteSOAPPortSoapBinding" type="impl:StockQuotePortType">

      <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

      <wsdl:operation name="getStockQuote">

         <wsdlsoap:operation soapAction="getStockQuote"/>

         <wsdl:input name="getStockQuoteRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getStockQuoteResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

      </wsdl:operation>

   </wsdl:binding>

   <wsdl:service name="StockQuoteService">

      <wsdl:port binding="impl:StockQuoteSOAPPortSoapBinding" name="StockQuoteSOAPPort">

         <wsdlsoap:address location="http://10.10.10.85/axis/services/StockQuoteSOAPPort"/>

      </wsdl:port>

   </wsdl:service>

</wsdl:definitions>
 

========================
SunGard Advisor Technologies

Mime
View raw message