Hi Parvez,
        For the moment, make the part something like this...

Add:-

<element name="dontCare" name="xsd:int"/>

Then, change the getVersionRequest message to be...
       
<wsdl:message name="getVersionRequest">
  <wsdl:part element="impl:dontCare" name="notRequired"/>
</wsdl:message>


It means that when you use the web service getVersion you will have to supply an input parameter, but you can make it zero, e.g. webService->getVersion( 0);  Not great, but at least it will work :-)

Regards,

Fred Preston.



Parvez shah <[EMAIL PROTECTED]>

03/03/2006 11:53
Please respond to "Apache AXIS C User List"

       
        To:        Apache AXIS C User List <[email protected]>
        cc:        
        Subject:        Re: java.util.NoSuchElementException from WSDL2Ws

       


Thanks for the help .. just one more thing ..

OT Request (how do i set part on method which takes no argument .. i did google on it but came up with no result)

Parvez

Fred Preston wrote:


Hi Parvez,

       The reason why your WSDL is causing WSDL2Ws to fail is because it currently does not support a message that does not have any parts.  For example, getVersionResponse:-


<wsdl:message name="getVersionResponse">
 <wsdl:part element="impl:version" name="version"/>
</wsdl:message>


is fine, but getVersionRequest:-

<wsdl:message name="getVersionRequest">
</wsdl:message>


because it does not have any parts, fails.  I have looked into which part of WSDL2Ws would need to change for this to work and the change is quite trivial.  But, for the moment, this is a known problem.  I will raise a JIRA (if one has not already been raised) to add this to the list of things that needs to be fixed.


Regards,

Fred Preston.



Parvez shah <[EMAIL PROTECTED]>

03/03/2006 09:49
Please respond to "Apache AXIS C User List"

       
       To:        Apache AXIS C User List
<[email protected]>
       cc:        

       Subject:        Re: java.util.NoSuchElementException from WSDL2Ws


     



does anyone has any pointer to this problem...

Parvez shah wrote:

Hi,
I am using axis-c-1.6a.n-Win32 on win 2000
I am getting following error while running
java org.apache.axis.wsdl.wsdl2ws.WSDL2Ws SystemStatus.wsdl -lc++ -sclient

java.util.NoSuchElementException
    at java.util.HashMap$HashIterator.nextEntry(Unknown Source)
    at java.util.HashMap$ValueIterator.next(Unknown Source)
    at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.addDocumentStyleInputMessageToMethodInfo(Unknown Source)
    at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.setMethodInfo(Unknown Source)
    at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.getServiceInfo(Unknown Source)
    at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.generateWrappers(Unknown Source)

    at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.main(Unknown Source)

Code generation failed. Please see errors above

The same wsdl i tried using with wsdl2java and gSOAP, and i dont get any error
can any one point me on what's the error or what should i look for coz error stack trace is not telling me any thing

Parvez




<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:services.ws.core.collabnet.com" xmlns:apachesoap=
"http://xml.apache.org/xml-soap" xmlns:impl="urn:services.ws.core.collabnet.com" xmlns:intf="urn:services.ws.core.collabnet.com" xmlns:tns1="urn:exception.ws.core.collabnet.com" 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="urn:services.ws.core.collabnet.com" xmlns=
"http://www.w3.org/2001/XMLSchema">
 <import namespace="urn:exception.ws.core.collabnet.com"/>
 <complexType name="version">
  <sequence>
   <element name="release" type="xsd:string"/>
   <element name="build" type="xsd:int"/>
   <element maxOccurs="unbounded" minOccurs="0" name="patch" type="xsd:string"/>
   <element name="apiVersion" type="xsd:string"/>
  </sequence>
 </complexType>
 <element name="version" type="impl:version"/>
 <element name="WSException" type="tns1:WSException"/>
 <element name="currentTime" type="xsd:long"/>
 <element name="project" type="xsd:string"/>
 <complexType name="projectInfo">
  <sequence>
   <element name="name" type="xsd:string"/>
   <element name="ptEnabled" type="xsd:boolean"/>
  </sequence>
 </complexType>
 <element name="projectInfo" type="impl:projectInfo"/>
</schema>
<schema elementFormDefault="qualified" targetNamespace="urn:exception.ws.core.collabnet.com" xmlns=
"http://www.w3.org/2001/XMLSchema">
 <import namespace="urn:services.ws.core.collabnet.com"/>
 <complexType name="WSException">
  <sequence>
   <element name="causeExceptionType" nillable="true" type="xsd:string"/>
   <element name="stackTraceString" nillable="true" type="xsd:string"/>
   <element name="errorMessage" nillable="true" type="xsd:string"/>
  </sequence>
 </complexType>
</schema>
</wsdl:types>

 <wsdl:message name="getProjectInfoRequest">

    <wsdl:part element="impl:project" name="project"/>

 </wsdl:message>

 <wsdl:message name="getCurrentTimeRequest">

 </wsdl:message>

 <wsdl:message name="getVersionResponse">

    <wsdl:part element="impl:version" name="version"/>

 </wsdl:message>

 <wsdl:message name="getProjectInfoResponse">

    <wsdl:part element="impl:projectInfo" name="projectInfo"/>

 </wsdl:message>

 <wsdl:message name="getVersionRequest">

 </wsdl:message>

 <wsdl:message name="WSException">

    <wsdl:part element="impl:WSException" name="WSException"/>

 </wsdl:message>

 <wsdl:message name="getCurrentTimeResponse">

    <wsdl:part element="impl:currentTime" name="currentTime"/>

 </wsdl:message>

 <wsdl:portType name="SystemStatus">

    <wsdl:operation name="getVersion">

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

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

       <wsdl:fault message="impl:WSException" name="WSException"/>

    </wsdl:operation>

    <wsdl:operation name="getCurrentTime">

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

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

    </wsdl:operation>

    <wsdl:operation name="getProjectInfo" parameterOrder="project">

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

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

       <wsdl:fault message="impl:WSException" name="WSException"/>

    </wsdl:operation>

 </wsdl:portType>

 <wsdl:binding name="SystemStatusServiceSoapBinding" type="impl:SystemStatus">

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

    <wsdl:operation name="getVersion">

       <wsdlsoap:operation soapAction="getVersion"/>

       <wsdl:input name="getVersionRequest">

          <wsdlsoap:body use="literal"/>

       </wsdl:input>

       <wsdl:output name="getVersionResponse">

          <wsdlsoap:body use="literal"/>

       </wsdl:output>

       <wsdl:fault name="WSException">

          <wsdlsoap:fault name="WSException" use="literal"/>

       </wsdl:fault>

    </wsdl:operation>

    <wsdl:operation name="getCurrentTime">

       <wsdlsoap:operation soapAction="getCurrentTime"/>

       <wsdl:input name="getCurrentTimeRequest">

          <wsdlsoap:body use="literal"/>

       </wsdl:input>

       <wsdl:output name="getCurrentTimeResponse">

          <wsdlsoap:body use="literal"/>

       </wsdl:output>

    </wsdl:operation>

    <wsdl:operation name="getProjectInfo">

       <wsdlsoap:operation soapAction="getProjectInfo"/>

       <wsdl:input name="getProjectInfoRequest">

          <wsdlsoap:body use="literal"/>

       </wsdl:input>

       <wsdl:output name="getProjectInfoResponse">

          <wsdlsoap:body use="literal"/>

       </wsdl:output>

       <wsdl:fault name="WSException">

          <wsdlsoap:fault name="WSException" use="literal"/>

       </wsdl:fault>

    </wsdl:operation>

 </wsdl:binding>

 <wsdl:service name="SystemStatusService">

    <wsdl:port binding="impl:SystemStatusServiceSoapBinding" name="SystemStatusService">

       <wsdlsoap:address location=
"http://www.soltest3.maa.collab.net/axis/services/ws-sec-min/ws/SystemStatus"/>

    </wsdl:port>

 </wsdl:service>

</wsdl:definitions>
 

Reply via email to