Hi there,

I have a problem with the response of a service. I wrote wsdl (you can find
it below)
and generated java stubs. Request creation works fine (you can find it
below), but
the response created (you can find it below) is a bit weird. I defined that
output
of the operation getDataDictionary contains message
getDataDictionaryOutput. But in
the response I recieve <getDataDictionaryResult xmlns=""> with the members
of the
DataDictionary directly under it!! Is it a bug in axis or am I missing
something?

Thanks for any help in advance.

Regards
Milos
Basel, Switzerland


================================================================================
wsdl:


<definitions targetNamespace="http://www.novartis.com/gerda"; xmlns:gerdans
="http://www.novartis.com/gerda"; xmlns:gerdatypes
="http://www.novartis.com/gerda/types"; xmlns:xsd
="http://www.w3.org/2001/XMLSchema"; xmlns:soap
="http://schemas.xmlsoap.org/wsdl/soap/"; xmlns
="http://schemas.xmlsoap.org/wsdl/";>

  <import namespace="http://www.novartis.com/gerda/types"; location="
\javalibs\axis\samples\gerda\GerdaTypes.wsdl"/>

  <message name="getDataDictionaryInput">
    <part name="context" type="gerdatypes:CallContext"/>
    <part name="version" type="xsd:string"/>
  </message>

  <message name="getDataDictionaryOutput">
    <part name="dictionary" type="gerdatypes:DataDictionary"/>
  </message>

  <portType name="SrvDataDictionaryPortType">
    <operation name="getDataDictionary">
      <input message="gerdans:getDataDictionaryInput"/>
      <output name="dictionary" message="gerdans:getDataDictionaryOutput"/>
    </operation>
  </portType>

  <binding name="SrvDataDictionaryBinding" type
="gerdans:SrvDataDictionaryPortType">
    <soap:binding style="rpc" transport
="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="getDataDictionary">
      <soap:operation soapAction="urn:getDataDictionary"/>
      <input>
        <soap:body parts="context" use="literal"/>
      </input>
      <output>
       <soap:body parts="dictionary" use="literal"/>
      </output>
    </operation>
  </binding>

  <service name="SrvDataDictionary">
    <documentation>All Services to retrieve relevant
DataDictionaries</documentation>
    <port name="SrvDataDictionaryPort" binding
="gerdans:SrvDataDictionaryBinding">
      <soap:address location="http://localhost:8080/axis"/>
    </port>
  </service>

</definitions>




with the included file for data types:




<definitions        targetNamespace="http://www.novartis.com/gerda/types";
                                         xmlns
="http://schemas.xmlsoap.org/wsdl/";
                                         xmlns:xsd
="http://www.w3.org/2001/XMLSchema";
                                         xmlns:soap
="http://schemas.xmlsoap.org/wsdl/soap/";>

     <types>
          <schema targetNamespace="http://www.novartis.com/gerda/types";
xmlns:gerdatypes="http://www.novartis.com/gerda/types"; xmlns
="http://www.w3.org/2001/XMLSchema"; xmlns:soapenc
="http://schemas.xmlsoap.org/soap/encoding/";>

            <complexType name="DataDictionary">
               <all>
                 <element name="PkgType" type="xsd:string"/>
                 <element name="Options" type="xsd:string"/>
                 <element name="Version" type="xsd:string"/>
                 <element name="MainSubject" type="gerdatypes:Subject"/>
                 <element name="Subjects" type
="gerdatypes:ArrayOfSubjects"/>
               </all>
            </complexType>

...
...
...

            <complexType name="CallContext">
               <all>
                 <element name="InterfaceType" type="xsd:string"/>
                 <element name="InterfaceVersion" type="xsd:string"/>
                 <element name="InterfaceInstance" type="xsd:string"/>
                 <element name="InterfaceAccount" type="xsd:string"/>
                 <element name="InterfacePassword" type="xsd:string"/>
                 <element name="Username" type="xsd:string"/>
               </all>
            </complexType>
          </schema>

     </types>

</definitions>

================================================================================
Request:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV
="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd
="http://www.w3.org/2001/XMLSchema"; xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance";>
 <SOAP-ENV:Body>
  <getDataDictionary xmlns="http://www.novartis.com/gerda";>
   <context>
    <interfaceType>WebInterface</interfaceType>
    <username xsi:nil="true"/>
    <interfaceVersion xsi:nil="true"/>
    <interfaceInstance xsi:nil="true"/>
    <interfaceAccount xsi:nil="true"/>
    <interfacePassword xsi:nil="true"/>
   </context>
   <version>3276</version>
  </getDataDictionary>
 </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


================================================================================
Response:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV
="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd
="http://www.w3.org/2001/XMLSchema"; xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance";>
 <SOAP-ENV:Body>
  <getDataDictionaryResult xmlns="">
   <version>3276</version>
   <options xsi:nil="true"/>
   <pkgType xsi:nil="true"/>
   <mainSubject xsi:nil="true"/>
   <subjects xsi:nil="true"/>
  </getDataDictionaryResult>
 </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Reply via email to