Hello to everyone!

I use axis 1.1 and I try to create stubs, typeMappings etc. for a handmade wsdl file using WSDL2Java.
If I use the wsdl file that I attached to this mail, no typeMapping-classes are created. In other words the class TServiceID.java is not created. Never the less the created stub-classes want the TServiceID class.
Also deploy.wsdd contains no <typeMapping> elements.


But if I use only _one_ of the two operations - it doesn't matter which is commented out/deleted - the mappings are created.

Can anyone tell me why this is so?
Is it because both operations use similar return values? (A single tServiceID-element vs. a sequence of such elements)
Is the schema too complex for propper handling? (attributes involved)
Is the problem related to the doc/lit style I wanted to use?



thanks, Christoph
<definitions 
   xmlns="http://schemas.xmlsoap.org/wsdl/";
         xmlns:tns="http://services.test0.com/ws/test/";
   targetNamespace="http://services.test0.com/ws/test/";
   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
   xmlns:s0="http://services.test0.com/ws/test/schema/";
   xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
>

   <types>
      <xs:schema 
         xmlns:ns="http://services.test0.com/ws/test/schema/"; 
         targetNamespace="http://services.test0.com/ws/test/schema/";>

         <xs:complexType name="tEmptyMsg" />       

         <xs:complexType name="tServiceID">
            <xs:simpleContent>
               <xs:extension base="xs:string">
                  <xs:attribute name="kind" type="xs:string" default="ID"/>
               </xs:extension>
            </xs:simpleContent>
         </xs:complexType>

         <xs:complexType name="tServices">
            <xs:sequence>
               <xs:element name="service" minOccurs="0" maxOccurs="unbounded" type="s0:tServiceID" />
            </xs:sequence>
         </xs:complexType>

         <xs:element name="subscribeService" type="s0:tServiceID" />
         <xs:element name="subscribeServiceResponse" type="s0:tServiceID" />

         <xs:element name="listAvailableServices" type="s0:tEmptyMsg" />
         <xs:element name="listAvailableServicesResponse" type="s0:tServices" />

      </xs:schema>
   </types>

   <message name="subscribeService">
      <part name="param" element="s0:subscribeService"/>
   </message>
   <message name="subscribeServiceResponse">
      <part name="param" element="s0:subscribeServiceResponse"/>
   </message>
   <message name="listAvailableServices">
      <part name="param" element="s0:listAvailableServices"/>
   </message>
   <message name="listAvailableServicesResponse">
      <part name="param" element="s0:listAvailableServicesResponse"/>
   </message>

   <portType name="TestServicesSOAP">
      <operation name="subscribeService">
         <input message="tns:subscribeService"/>
         <output message="tns:subscribeServiceResponse"/>
      </operation>
      <operation name="listAvailableServices">
         <input message="tns:listAvailableServices"/>
         <output message="tns:listAvailableServicesResponse"/>
      </operation>
   </portType>
   
   <binding name="bindingTestServiceSOAP" type="tns:TestServicesSOAP">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

      <operation name="subscribeService">
         <input>
				<soap:body use="literal" />
         </input>
         <output>
				<soap:body use="literal" />
         </output>
      </operation>
      <operation name="listAvailableServices">
         <input>
				<soap:body use="literal" />
         </input>
         <output>
				<soap:body use="literal" />
         </output>
      </operation>
   </binding>

   <service name="TestServices">
      <port name="TestServicesSOAP" binding="tns:bindingTestServiceSOAP">
         <soap:address location="http://localhost:8080/axis/services/TestServices"/>
      </port>
   </service>
</definitions>

Reply via email to