On 9/28/07, Dimuthu Gamage <[EMAIL PROTECTED]> wrote: > > > > On 9/27/07, Sathya Raghunathan < [EMAIL PROTECTED]> wrote: > > > > Hi > > > > 1) I can understand that multithreading is taken care of by > > axis2_http_server after reading one of the mailing lists. For a new request, > > a worker thread is created. I would like to know if the number of threads > > can be configured or not. > > Should i modify any parameter in the httpd.conf for this? > > > > AFAIK you can not configure threads or connections with simple axis2 > server. but you can do it with in apache (with axis2 module) > > 2) I read from one of your mailing list that user defined soap faults can > > be sent as an element as part of soap Body by using the > > AXIS2_ERROR_SET_STATUS_CODE(env->error, AXIS2_FAILURE); and > > AXIS2_ERROR_SET_ERROR_NUMBER(env->error, AXIS2_ERROR_FOO); > > > > But how and where can we create this AXIS2_ERROR_FOO with a custom error > > message? Which function to call, to create the error number for > > AXIS2_ERROR_FOO? I saw that axis error.c file has all the axis related > > error messages defined. Similarly where to define the the AXIS2_ERROR_FOO? > > > > Please clarify > > > > Thank you so much for all the support you have given till now > > > > Regards > > Sathya > > > > On 9/26/07, Sathya Raghunathan <[EMAIL PROTECTED] > wrote: > > > > > > 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? > > > > > > Yes, It is as in the sample wsdl you attached. (Please see the comment > inline inside the wsdl) > > > How will wsdl2c generate code corresponding to the faults? > > > > > > Currently WSDL2C code generation doesnt not support on customized fault > messages. >
Anyway you can edit the "axis2_svc_skel_xxxx_on_fault" funciton on the generated file "axis2_svc_skel_xxxx.c" to build a custom soap fault. Thanks Dimuthu 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. > > > > > > The wsdl is wrong in following places.. > > > > 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"/> > > > > > > You should have an element="some_schema_element" attribute if it is a doc > style wsdl, > i.e above should be changed to > <part name="data" element="some_schema_element"/> > > > </message> > > > <message name="WrongParameter"> > > > <part name="part1" type="xsd:int"/> > > > <part name="part2" type="xsd:int"/> > > > > > > Always part of fault message should associated with an element (element in > a valid schema) both in rpc and doc styles. > > Thanks > Dimuthu > > </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"/ > > > <http://schemas.xmlsoap.org/soap/http%22/>> > > > <operation name="faultMethod"> > > > <soap:operation soapAction="faultMethod" style="document"/> > > > <input> > > > <soap:body use="literal" namespace=" > > > http://www.roguewave.com/rwsf/webservice/"/ > > > <http://www.roguewave.com/rwsf/webservice/%22/>> > > > </input> > > > <output> > > > <soap:body use="literal" namespace=" > > > http://www.roguewave.com/rwsf/webservice/"/<http://www.roguewave.com/rwsf/webservice/%22/> > > > > > > > </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"/ > > > <http://localhost:8090/fault/Fault%22/>> > > > </port> > > > </service> > > > </wsdl:definitions> > > > > > > > > > Thanks > > > Sathya > > > > > > > > > > > > > >