Hi,

I am developing a web service using Axis2c-1.6.0 based on WSDL generated C
code and I am on server side.

I have some ADB APIs that return axis2_status_t.
Even if these APIs are returning AXIS2_SUCCESS (no other errors from server
side business logic), it calls service skeletons on_fault code and sends
"No Error" soap fault.

Please see below for packet trace for response

***Server***
HTTP/1.1 500 Internal Server Error
Date: Tue Jul  9 12:10:05 2013 GMT
Server: Axis2C/1.6.0 (Simple Axis2 HTTP Server)
Content-Type: application/soap+xml;charset=UTF-8
Transfer-Encoding: chunked

<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope";>
  <soapenv:Body>
    <soapenv:Fault>
      <soapenv:Code>
        <soapenv:Value>soapenv:Sender</soapenv:Value>
      </soapenv:Code>
      <soapenv:Reason>
        <soapenv:Text xmlns:xml="http://www.w3.org/XML/1998/namespace";
xml:lang="en">No Error</soapenv:Text>
      </soapenv:Reason>
      <soapenv:Detail>
        <fault>myService|http://com.abcd.efg.hijk/2.0/ failed</fault>
      </soapenv:Detail>
    </soapenv:Fault>
  </soapenv:Body>
</soapenv:Envelope>

Below is ADB function for one such API:

axis2_status_t  axis2_skel_myService_myTask(const axutil_env_t *env ,
axis2_msg_ctx_t *msg_ctx,
                                              adb_cancelTask_t* _cancelTask,
                                          axis2_skel_myService_myTask_fault
*fault );


Looks like it cannot handle when ADB does not have any output params to
return (so it returns NULL) and status is AXIS2_SUCCESS.

Changing WSDL is not an option for my project.

My problem is different from the issue at
https://issues.apache.org/jira/browse/AXIS2C-1279

I apologize if this question is already answered and please point me to
that link.

This is kind of a blocker for me right now. Any help is greatly appreciated.

Thanks,
Pavani

Reply via email to