Discussion:
Axis2c-1.6.0: Issue with sending "No Error" soap fault
Pavani J
2013-07-10 05:02:07 UTC
Permalink
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
Rajika Kumarasiri
2013-07-10 05:39:29 UTC
Permalink
axis2_status_t returns the status of the invocation. As you have seen the
invocation has been successful with a fault.

Rajika
Post by Pavani J
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>
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
Pavani J
2013-07-10 05:48:55 UTC
Permalink
But service is not failing and so service is not setting any fault or
error. And yet service skeletons on_fault code is called.

Thanks,
Pavani


On Tue, Jul 9, 2013 at 10:39 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
axis2_status_t returns the status of the invocation. As you have seen the
invocation has been successful with a fault.
Rajika
Post by Pavani J
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>
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
Rajika Kumarasiri
2013-07-10 06:05:22 UTC
Permalink
The request hasn't even reached the service. You need to check why the
request is not dispatched to service. Check the server log. As I said as
far as client is concern the invocation is successful with a fault.

Rajika
Post by Pavani J
But service is not failing and so service is not setting any fault or
error. And yet service skeletons on_fault code is called.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 10:39 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
axis2_status_t returns the status of the invocation. As you have seen the
invocation has been successful with a fault.
Rajika
Post by Pavani J
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>
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
Pavani J
2013-07-10 06:15:11 UTC
Permalink
Request has reached server. Since I am at server side (not client), I used
gdb to step through service implementation code which returns SUCCESS and
also no error/fault by service implementation.

Thanks,
Pavani


On Tue, Jul 9, 2013 at 11:05 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
The request hasn't even reached the service. You need to check why the
request is not dispatched to service. Check the server log. As I said as
far as client is concern the invocation is successful with a fault.
Rajika
Post by Pavani J
But service is not failing and so service is not setting any fault or
error. And yet service skeletons on_fault code is called.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 10:39 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
axis2_status_t returns the status of the invocation. As you have seen
the invocation has been successful with a fault.
Rajika
Post by Pavani J
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>
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
Rajika Kumarasiri
2013-07-10 06:26:04 UTC
Permalink
What prevent you from checking the sever log ?

Rajika
Post by Pavani J
Request has reached server. Since I am at server side (not client), I used
gdb to step through service implementation code which returns SUCCESS and
also no error/fault by service implementation.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 11:05 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
The request hasn't even reached the service. You need to check why the
request is not dispatched to service. Check the server log. As I said as
far as client is concern the invocation is successful with a fault.
Rajika
Post by Pavani J
But service is not failing and so service is not setting any fault or
error. And yet service skeletons on_fault code is called.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 10:39 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
axis2_status_t returns the status of the invocation. As you have seen
the invocation has been successful with a fault.
Rajika
Post by Pavani J
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>
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
Pavani J
2013-07-10 06:56:33 UTC
Permalink
This is my server log:

[Tue Jul 9 18:11:12 2013] [info] Starting Axis2 HTTP server....
[Tue Jul 9 18:11:12 2013] [info] Apache Axis2/C version in use : 1.6.0
[Tue Jul 9 18:11:12 2013] [info] Server port : 9090
[Tue Jul 9 18:11:12 2013] [info] Repo location : ../
[Tue Jul 9 18:11:12 2013] [info] Read Timeout : 60000 ms
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*rest_dispatcher added to the index 0 of the phase Dispatch
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*soap_message_body_based_dispatcher added to the index 1 of the phase
Dispatch
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*dispatch_post_conditions_evaluator added to the index 0 of the phase
PostDispatch
[Tue Jul 9 18:11:12 2013] [debug] phase.c(121) axis2_handler_t
*context_handler added to the index 1 of the phase PostDispatch
[Tue Jul 9 18:11:12 2013] [debug] conf_builder.c(234) No custom
dispatching order found. Continue with the default dispatching order
[Tue Jul 9 18:11:12 2013] [debug] conf_builder.c(379) Module addressing
found in axis2.xml
[Tue Jul 9 18:11:12 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_sender.so shared lib loaded successfully
[Tue Jul 9 18:11:12 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_receiver.so shared lib loaded successfully
[Tue Jul 9 18:11:12 2013] [debug] dep_engine.c(1283)
axis2_dep_engine_load_module_dll: DLL path is :
..//modules/addressing/libaxis2_mod_addr.so
[Tue Jul 9 18:11:12 2013] [debug] class_loader.c(140)
..//modules/addressing/libaxis2_mod_addr.so shared lib loaded successfully
[Tue Jul 9 18:11:12 2013] [debug] dep_engine.c(1283)
axis2_dep_engine_load_module_dll: DLL path is :
..//modules/logging/libaxis2_mod_log.so
[Tue Jul 9 18:11:12 2013] [debug] class_loader.c(140)
..//modules/logging/libaxis2_mod_log.so shared lib loaded successfully
[Tue Jul 9 18:11:12 2013] [debug] svc_builder.c(318) DLL path is :
..//services/myService/myService.so
[Tue Jul 9 18:11:12 2013] [debug] phase_holder.c(139) Add handler
AddressingInHandler to phase Transport
[Tue Jul 9 18:11:12 2013] [debug] phase_resolver.c(222) svc name
is:myService
[Tue Jul 9 18:11:12 2013] [debug] phase_resolver.c(139) Service name is :
myService
:
:
:
:
:
:
[Tue Jul 9 18:11:12 2013] [info] Starting HTTP server thread
[Tue Jul 9 18:11:47 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 18:11:47 2013] [debug] http_transport_utils.c(375) HTTP stream
chunked
[Tue Jul 9 18:11:47 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 18:11:47 2013] [debug] req_uri_disp.c(100) Checking for service
using target endpoint address :
http://127.0.0.1:9090/axis2/services/myService
[Tue Jul 9 18:11:47 2013] [debug] req_uri_disp.c(121) Service found using
target endpoint address
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 18:11:47 2013] [info] Starting addressing in handler
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 18:11:47 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : myTask
[Tue Jul 9 18:11:47 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 18:11:47 2013] [debug] raw_xml_in_out_msg_recv.c(382)
fault_detail:<soapenv:Detail xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope"></soapenv:Detail>
[Tue Jul 9 18:11:47 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 18:11:47 2013] [info] Starting addressing out handler
[Tue Jul 9 18:11:47 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 18:11:47 2013] [info] Request served in 0.004 seconds

Greatly appreciate your help

Thanks,
Pavani


On Tue, Jul 9, 2013 at 11:26 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
What prevent you from checking the sever log ?
Rajika
Post by Pavani J
Request has reached server. Since I am at server side (not client), I
used gdb to step through service implementation code which returns SUCCESS
and also no error/fault by service implementation.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 11:05 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
The request hasn't even reached the service. You need to check why the
request is not dispatched to service. Check the server log. As I said as
far as client is concern the invocation is successful with a fault.
Rajika
Post by Pavani J
But service is not failing and so service is not setting any fault or
error. And yet service skeletons on_fault code is called.
Thanks,
Pavani
On Tue, Jul 9, 2013 at 10:39 PM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
axis2_status_t returns the status of the invocation. As you have seen
the invocation has been successful with a fault.
Rajika
Post by Pavani J
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>
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
Pavani J
2013-07-10 09:47:07 UTC
Permalink
Hi Rajika,

The server log does not say much, right? So I am wondering what else should
I try to narrow down the cause.

Any help is greatly appreciated.

Thanks,
Pavani
Post by Pavani J
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>
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
Tharindu Mathew
2013-07-10 10:23:48 UTC
Permalink
Are you sure only one request is being sent to the server?

Can it be one succeeding and one hitting the fault sequence?
Post by Pavani J
Hi Rajika,
The server log does not say much, right? So I am wondering what else
should I try to narrow down the cause.
Any help is greatly appreciated.
Thanks,
Pavani
Post by Pavani J
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>
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
Pavani J
2013-07-10 11:20:49 UTC
Permalink
Actually there is one more request before this particular one but there are
no errors I could see in log file for that request. Client cannot send more
requests because of this issue of "No Error".

Here is log with these two requests this time.

[Tue Jul 9 22:25:15 2013] [info] Starting Axis2 HTTP server....
[Tue Jul 9 22:25:15 2013] [info] Apache Axis2/C version in use : 1.6.0
[Tue Jul 9 22:25:15 2013] [info] Server port : 9090
[Tue Jul 9 22:25:15 2013] [info] Repo location : ../
[Tue Jul 9 22:25:15 2013] [info] Read Timeout : 60000 ms
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*rest_dispatcher added to the index 0 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_message_body_based_dispatcher added to the index 1 of the phase
Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*dispatch_post_conditions_evaluator added to the index 0 of the phase
PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*context_handler added to the index 1 of the phase PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(234) No custom
dispatching order found. Continue with the default dispatching order
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(379) Module addressing
found in axis2.xml
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_sender.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_receiver.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
axis2_dep_engine_load_module_dll: DLL path is :
..//modules/addressing/libaxis2_mod_addr.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/addressing/libaxis2_mod_addr.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
axis2_dep_engine_load_module_dll: DLL path is :
..//modules/logging/libaxis2_mod_log.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/logging/libaxis2_mod_log.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] svc_builder.c(318) DLL path is :
..//services/myService/libmyService.so
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingInHandler to phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(222) svc name
is:myService
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(139) Service name is :
myService
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name is
: myTask
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name is
: setContext
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
:
:
<More Operations>
:
:
[Tue Jul 9 22:25:15 2013] [info] Starting HTTP server thread
[Tue Jul 9 22:25:41 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:41 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(100) Checking for service
using target endpoint address :
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(121) Service found using
target endpoint address
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:42 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:42 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : setContext
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] class_loader.c(140)
..//services/myService/libmyService.so shared lib loaded successfully
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:42 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:42 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:42 2013] [info] Request served in 1.253 seconds
[Tue Jul 9 22:25:43 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:43 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(100) Checking for service
using target endpoint address :
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(121) Service found using
target endpoint address
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:43 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:43 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : myTask
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] raw_xml_in_out_msg_recv.c(382)
fault_detail:<soapenv:Detail xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope"></soapenv:Detail>
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:43 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:43 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:43 2013] [info] Request served in 0.059 seconds

And response for setContext (first request) is fine when examined using
wireshark. Only myTask (second request) operation fails.

Greatly appreciate your help.

Thanks,
Pavani


On Wed, Jul 10, 2013 at 3:23 AM, Tharindu Mathew
Post by Tharindu Mathew
Are you sure only one request is being sent to the server?
Can it be one succeeding and one hitting the fault sequence?
Post by Pavani J
Hi Rajika,
The server log does not say much, right? So I am wondering what else
should I try to narrow down the cause.
Any help is greatly appreciated.
Thanks,
Pavani
Post by Pavani J
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>
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
Rajika Kumarasiri
2013-07-10 17:38:51 UTC
Permalink
It's strange that you have received a 500 and the log doesn't have any
error entry. You can try building a client yourselves using the axiom api
for the failing operation and see if the code generator is the culprit. See
the sample folder to see how to use the api.

Rajika
Post by Pavani J
Actually there is one more request before this particular one but there
are no errors I could see in log file for that request. Client cannot send
more requests because of this issue of "No Error".
Here is log with these two requests this time.
[Tue Jul 9 22:25:15 2013] [info] Starting Axis2 HTTP server....
[Tue Jul 9 22:25:15 2013] [info] Apache Axis2/C version in use : 1.6.0
[Tue Jul 9 22:25:15 2013] [info] Server port : 9090
[Tue Jul 9 22:25:15 2013] [info] Repo location : ../
[Tue Jul 9 22:25:15 2013] [info] Read Timeout : 60000 ms
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*rest_dispatcher added to the index 0 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_message_body_based_dispatcher added to the index 1 of the phase
Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*dispatch_post_conditions_evaluator added to the index 0 of the phase
PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*context_handler added to the index 1 of the phase PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(234) No custom
dispatching order found. Continue with the default dispatching order
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(379) Module addressing
found in axis2.xml
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_sender.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_receiver.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
..//modules/addressing/libaxis2_mod_addr.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/addressing/libaxis2_mod_addr.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
..//modules/logging/libaxis2_mod_log.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/logging/libaxis2_mod_log.so shared lib loaded successfully
..//services/myService/libmyService.so
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingInHandler to phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(222) svc name
is:myService
myService
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name
is : myTask
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name
is : setContext
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
<More Operations>
[Tue Jul 9 22:25:15 2013] [info] Starting HTTP server thread
[Tue Jul 9 22:25:41 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:41 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(100) Checking for
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(121) Service found using
target endpoint address
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:42 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:42 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : setContext
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] class_loader.c(140)
..//services/myService/libmyService.so shared lib loaded successfully
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:42 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:42 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:42 2013] [info] Request served in 1.253 seconds
[Tue Jul 9 22:25:43 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:43 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(100) Checking for
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(121) Service found using
target endpoint address
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:43 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:43 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : myTask
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] raw_xml_in_out_msg_recv.c(382)
fault_detail:<soapenv:Detail xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope"></soapenv:Detail>
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:43 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:43 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:43 2013] [info] Request served in 0.059 seconds
And response for setContext (first request) is fine when examined using
wireshark. Only myTask (second request) operation fails.
Greatly appreciate your help.
Thanks,
Pavani
On Wed, Jul 10, 2013 at 3:23 AM, Tharindu Mathew <
Post by Tharindu Mathew
Are you sure only one request is being sent to the server?
Can it be one succeeding and one hitting the fault sequence?
Post by Pavani J
Hi Rajika,
The server log does not say much, right? So I am wondering what else
should I try to narrow down the cause.
Any help is greatly appreciated.
Thanks,
Pavani
Post by Pavani J
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>
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
Pavani J
2013-07-10 22:04:24 UTC
Permalink
I am using axis2-1.6.2 jar files for generation C stubs. Will that be of
any problem.

Will try to build client using axiom api.

Thanks,
Pavani


On Wed, Jul 10, 2013 at 10:38 AM, Rajika Kumarasiri <
Post by Rajika Kumarasiri
It's strange that you have received a 500 and the log doesn't have any
error entry. You can try building a client yourselves using the axiom api
for the failing operation and see if the code generator is the culprit. See
the sample folder to see how to use the api.
Rajika
Post by Pavani J
Actually there is one more request before this particular one but there
are no errors I could see in log file for that request. Client cannot send
more requests because of this issue of "No Error".
Here is log with these two requests this time.
[Tue Jul 9 22:25:15 2013] [info] Starting Axis2 HTTP server....
[Tue Jul 9 22:25:15 2013] [info] Apache Axis2/C version in use : 1.6.0
[Tue Jul 9 22:25:15 2013] [info] Server port : 9090
[Tue Jul 9 22:25:15 2013] [info] Repo location : ../
[Tue Jul 9 22:25:15 2013] [info] Read Timeout : 60000 ms
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*rest_dispatcher added to the index 0 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_message_body_based_dispatcher added to the index 1 of the phase
Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*dispatch_post_conditions_evaluator added to the index 0 of the phase
PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] phase.c(121) axis2_handler_t
*context_handler added to the index 1 of the phase PostDispatch
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(234) No custom
dispatching order found. Continue with the default dispatching order
[Tue Jul 9 22:25:15 2013] [debug] conf_builder.c(379) Module addressing
found in axis2.xml
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_sender.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//lib/libaxis2_http_receiver.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
..//modules/addressing/libaxis2_mod_addr.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/addressing/libaxis2_mod_addr.so shared lib loaded successfully
[Tue Jul 9 22:25:15 2013] [debug] dep_engine.c(1283)
..//modules/logging/libaxis2_mod_log.so
[Tue Jul 9 22:25:15 2013] [debug] class_loader.c(140)
..//modules/logging/libaxis2_mod_log.so shared lib loaded successfully
..//services/myService/libmyService.so
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingInHandler to phase Transport
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(222) svc name
is:myService
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(139) Service name is
: myService
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name
is : myTask
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_resolver.c(1123) Operation name
is : setContext
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
[Tue Jul 9 22:25:15 2013] [debug] phase_holder.c(139) Add handler
AddressingOutHandler to phase MessageOut
<More Operations>
[Tue Jul 9 22:25:15 2013] [info] Starting HTTP server thread
[Tue Jul 9 22:25:41 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:41 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(100) Checking for
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:42 2013] [debug] req_uri_disp.c(121) Service found
using target endpoint address
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:42 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:42 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : setContext
[Tue Jul 9 22:25:42 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:42 2013] [debug] class_loader.c(140)
..//services/myService/libmyService.so shared lib loaded successfully
[Tue Jul 9 22:25:42 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:42 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:42 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:42 2013] [info] Request served in 1.253 seconds
[Tue Jul 9 22:25:43 2013] [debug] http_worker.c(200) Client HTTP version
HTTP/1.1
[Tue Jul 9 22:25:43 2013] [debug] soap_builder.c(945) identified soap
version is soap12
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
request_uri_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(100) Checking for
http://192.168.29.112:9090/axis2/services/myService
[Tue Jul 9 22:25:43 2013] [debug] req_uri_disp.c(121) Service found
using target endpoint address
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingInHandler within the phase Transport
[Tue Jul 9 22:25:43 2013] [info] Starting addressing in handler
[Tue Jul 9 22:25:43 2013] [info] addr_in_handler.c
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
addressing_based_dispatcher within the phase Transport
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
rest_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_message_body_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(231) Checking for
operation using SOAP messagebody's first child's local name : myTask
[Tue Jul 9 22:25:43 2013] [debug] soap_body_disp.c(240) Operation found
using SOAP message body's first child's local name
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
soap_action_based_dispatcher within the phase Dispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
dispatch_post_conditions_evaluator within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
context_handler within the phase PostDispatch
[Tue Jul 9 22:25:43 2013] [debug] raw_xml_in_out_msg_recv.c(382)
fault_detail:<soapenv:Detail xmlns:soapenv="
http://www.w3.org/2003/05/soap-envelope"></soapenv:Detail>
[Tue Jul 9 22:25:43 2013] [debug] phase.c(210) Invoke the handler
AddressingOutHandler within the phase MessageOut
[Tue Jul 9 22:25:43 2013] [info] Starting addressing out handler
[Tue Jul 9 22:25:43 2013] [debug] addr_out_handler.c(133) No action
present. Stop processing addressing
[Tue Jul 9 22:25:43 2013] [info] Request served in 0.059 seconds
And response for setContext (first request) is fine when examined using
wireshark. Only myTask (second request) operation fails.
Greatly appreciate your help.
Thanks,
Pavani
On Wed, Jul 10, 2013 at 3:23 AM, Tharindu Mathew <
Post by Tharindu Mathew
Are you sure only one request is being sent to the server?
Can it be one succeeding and one hitting the fault sequence?
Post by Pavani J
Hi Rajika,
The server log does not say much, right? So I am wondering what else
should I try to narrow down the cause.
Any help is greatly appreciated.
Thanks,
Pavani
Post by Pavani J
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>
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
Loading...