axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sathya Raghunathan" <pappu.raghunat...@gmail.com>
Subject Question on user defined faults and multithreading
Date Wed, 26 Sep 2007 12:13:41 GMT
Hi

1) How to build a multithreaded service using axis2c? Can wsdl2c tool
generate C code with multithreading functionality? If not, what is the way
to implement multithreading?
2) Can we give user defined faults in wsdl file? How will wsdl2c generate
code corresponding to the faults? Will the code generate any structures for
these fault types? I have an example wsdl for this. But i am not able to
generate code, because wsdl2c errors out saying "No element type is defined
for message faultMethodRequest"
Please clarify.


Below is the wsdl for user defined faults service which takes a single
integer and generates faults based on that integer value:


<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="
http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/" xmlns:tns="
http://www.roguewave.com/rwsf/webservice/fault" targetNamespace="
http://www.roguewave.com/rwsf/webservice/fault" name="Fault">
  <message name="faultMethodRequest">
    <part name="in1" type="xsd:int"/>
  </message>
  <message name="faultMethodResponse">
    <part name="return" type="xsd:int"/>
  </message>
  <message name="InvalidRequest">
    <part name="data" type="xsd:int"/>
  </message>
  <message name="WrongParameter">
    <part name="part1" type="xsd:int"/>
    <part name="part2" type="xsd:int"/>
  </message>
  <portType name="Fault">
    <operation name="faultMethod" parameterOrder="in1">
      <input message="tns:faultMethodRequest"/>
      <output message="tns:faultMethodResponse"/>
      <fault name="InvalidRequest" message="tns:InvalidRequest"/>
      <fault name="WrongParameter" message="tns:WrongParameter"/>
    </operation>
  </portType>
  <binding name="Fault" type="tns:Fault">
    <soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
    <operation name="faultMethod">
      <soap:operation soapAction="faultMethod" style="document"/>
      <input>
        <soap:body use="literal" namespace="
http://www.roguewave.com/rwsf/webservice/"/>
      </input>
      <output>
        <soap:body use="literal" namespace="
http://www.roguewave.com/rwsf/webservice/"/>
      </output>
      <fault name="InvalidRequest">
        <soap:fault name="InvalidRequest" use="literal"/>
      </fault>
      <fault name="WrongParameter">
        <soap:fault name="WrongParameter" use="literal"/>
      </fault>
    </operation>
  </binding>
  <service name="Fault">
    <port name="Fault" binding="tns:Fault">
      <soap:address location="http://localhost:8090/fault/Fault"/>
    </port>
  </service>
</wsdl:definitions>


Thanks
Sathya

Mime
View raw message