And according to the WSDL, "forecast" should be qualified using the "http://ws.ss.com/schemas/ws/ab" namespace. So the service is not generating the correct response.
- Anne On Apr 2, 2005 2:48 AM, HaoRan Zheng <[EMAIL PROTECTED]> wrote: > The soap message provided in your letter seems not a soap request from > any client, but a soap response from the server. Right? > > Regards, > HaoRan Zheng > > On Apr 2, 2005 1:56 PM, babloosony <[EMAIL PROTECTED]> wrote: > > Hi All, > > > > Say I have below soap message from the client (can be .NET or AXIS) : > > > > ------------------------------------------------------------------------------------------------- > > <soapenv:Envelope > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > <soapenv:Body> > > <getWeatherResponse xmlns="http://ws.ss.com/wsdl/ws/ab"> > > <forecast > > > <zip>343434</zip> > > <city>Campbell</city> > > <state>CA</state> > > <date>April 11, 2003</date> > > <forecast>20 percent chance of rain.</forecast> > > <hi>0</hi> > > <low>0</low> > > <precip>0</precip> > > <parentForecast> > > <parentZip>520010</parentZip> > > </parentForecast> > > </forecast> > > </getWeatherResponse> > > </soapenv:Body> > > </soapenv:Envelope> > > ------------------------------------------------------------------------------------------------- > > > > Now, in the above soap message I want to have this namespace > > declaration xmlns="http://ws.ss.com/schemas/ws/ab" for the forecast element > > <forecast xmlns="http://ws.ss.com/schemas/ws/ab">. Even though I have > > this 'forecast' element declared in > > seperate schema definition with its own namespace why is that the > > request soap message from AXIS or .NET does not > > include namespace for this forecast element in its request soap message ? > > > > Is there any configuration that I can in any of the below to achieve this : > > 1. .NET Framework 1.1 > > 2. AXIS 1.2 RC2 > > 3. in WSDL > > > > Is there anything that I can configure in my WSDL before giving to > > client's so that they can always send namespace for the soap message > > elements. Please suggest. Below is my wsdl > > > > ------------------------------------------------------------------------------------------------- > > <?xml version="1.0" encoding="UTF-8"?> > > > > <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > > > > xmlns:impl="http://ws.ss.com/wsdl/ws/ab" > > > > xmlns:intf="http://ws.ss.com/wsdl/ws/ab" > > > > xmlns:apachesoap="http://xml.apache.org/xml-soap" > > > > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" > > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > > xmlns:tns1="http://ws.ss.com/schemas/ws/ab" > > > > targetNamespace="http://ws.ss.com/wsdl/ws/ab"> > > <wsdl:types> > > <schema targetNamespace="http://ws.ss.com/schemas/ws/ab" > > elementFormDefault="qualified" > > xmlns:tns="http://ws.ss.com/schemas/ws/ab" > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > xmlns="http://www.w3.org/2001/XMLSchema"> > > <complexType name="parentForecast"> > > <sequence> > > <element name="parentZip" > > nillable="true" type="xsd:string" /> > > </sequence> > > </complexType> > > <element name="forecast"> > > <complexType> > > <complexContent> > > <extension > > base="tns1:parentForecast"> > > <sequence> > > <element > > minOccurs="0" name="zip" type="xsd:string"/> > > <element > > minOccurs="0" name="city" type="xsd:string"/> > > <element > > minOccurs="0" name="state" type="xsd:string"/> > > <element > > minOccurs="0" name="date" type="xsd:string"/> > > <element > > minOccurs="0" name="forecast" type="xsd:string"/> > > </sequence> > > <attribute > > use="required" name="hi" type="xsd:byte"/> > > <attribute > > use="required" name="low" type="xsd:byte"/> > > <attribute > > use="required" name="precip" type="xsd:byte"/> > > </extension> > > </complexContent> > > </complexType> > > </element> > > </schema> > > <schema xmlns="http://www.w3.org/2001/XMLSchema" > > targetNamespace="http://ws.ss.com/wsdl/ws/ab" > > elementFormDefault="qualified"> > > <import namespace="http://ws.ss.com/schemas/ws/ab"/> > > <element name="getWeather"> > > <complexType> > > <sequence> > > <element name="ziprq" > > type="xsd:string"/> > > </sequence> > > </complexType> > > </element> > > <element name="getWeatherResponse"> > > <complexType> > > <sequence> > > <element > > ref="tns1:forecast"/> > > </sequence> > > </complexType> > > </element> > > </schema> > > </wsdl:types> > > <wsdl:message name="getWeatherRequest"> > > <wsdl:part name="parameters" element="impl:getWeather"/> > > </wsdl:message> > > <wsdl:message name="getWeatherResponse"> > > <wsdl:part name="parameters" > > element="impl:getWeatherResponse"/> > > </wsdl:message> > > <wsdl:portType name="SparePartPriceSessionInterface"> > > <wsdl:operation name="getWeather"> > > <wsdl:input name="getWeatherRequest" > > message="impl:getWeatherRequest"/> > > <wsdl:output name="getWeatherResponse" > > message="impl:getWeatherResponse"/> > > </wsdl:operation> > > </wsdl:portType> > > <wsdl:binding name="SparePartPriceSessionBinding" > > type="impl:SparePartPriceSessionInterface"> > > <wsdlsoap:binding style="document" > > transport="http://schemas.xmlsoap.org/soap/http"/> > > <wsdl:operation name="getWeather"> > > <wsdlsoap:operation/> > > <wsdl:input> > > <wsdlsoap:body use="literal"/> > > </wsdl:input> > > <wsdl:output> > > <wsdlsoap:body use="literal"/> > > </wsdl:output> > > </wsdl:operation> > > </wsdl:binding> > > <wsdl:service name="SparePartPriceSessionInterfaceService"> > > <wsdl:port name="SparePartPriceSessionBean" > > binding="impl:SparePartPriceSessionBinding"> > > <wsdlsoap:address > > location="http://localhost:8080/axis/services/SparePartPriceSession"/> > > </wsdl:port> > > </wsdl:service> > > </wsdl:definitions> > > ------------------------------------------------------------------------------------------------- > > > > Thanks & Regards, > > Kumar. > > >
