You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by Sathya Raghunathan <pa...@gmail.com> on 2007/09/19 15:56:31 UTC

Segmentation fault while sending a message to server

Hi

I generated code with WSDL2C in axis2java2-1.3.

Once the C code is generated, i compiled the code and made a shared library.
After this i copied the shared library adn the service.xml to services
folder in the repository and started the axis2_http_server. When i gave
http://localhost:9090/soap from browser, i am able to see my service
running.
"Deployed Services*parseMessage **Available Operations*

   - parseMessage"

But when i send a message from client I am getting segmentation fault. I
copied hello.c sample client code, and changed at appropriate places.
  greet_om_ele = axiom_element_create(env, NULL, "parseMessage", NULL,
&greet_om_node);
  axiom_element_set_text(greet_om_ele, env, "I am sending a parse Message!",
greet_om_node);

And it gave a segmentation fault. Please let me know whether i am sending it
correctly or not. I am attaching the files generated for input message as
well as the stack trace. Please help.

Thanks
Sathya

[Switching to Thread -1222382672 (LWP 6863)]
0xb7553a97 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x8094ef0,
env=0x809d298, msg_ctx=0x0) at msg_recv.c:157
157         AXIS2_SVC_SKELETON_INIT((axis2_svc_skeleton_t *)impl_class,
env);
(gdb) where
#0  0xb7553a97 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x8094ef0,
env=0x809d298, msg_ctx=0x0) at msg_recv.c:157
#1  0xb7553b2b in axis2_msg_recv_get_impl_obj (msg_recv=0x8094ef0,
env=0x809d298, msg_ctx=0x809dcb8) at msg_recv.c:184
#2  0xb75540a9 in axis2_raw_xml_in_out_msg_recv_invoke_business_logic_sync
(msg_recv=0x8094ef0, env=0x809d298,
    msg_ctx=0x809dcb8, new_msg_ctx=0x809f580) at
raw_xml_in_out_msg_recv.c:93
#3  0xb7553f32 in axis2_msg_recv_invoke_business_logic (msg_recv=0x8093f78,
env=0x809d298, in_msg_ctx=0x809dcb8,
    out_msg_ctx=0x809f580) at msg_recv.c:372
#4  0xb7553db7 in axis2_msg_recv_receive_impl (msg_recv=0x8094ef0,
env=0x809d298, msg_ctx=0x809dcb8,
    callback_recv_param=0x0) at msg_recv.c:304
#5  0xb7553f7e in axis2_msg_recv_receive (msg_recv=0x8093f78, env=0x809d298,
msg_ctx=0x809dcb8, callback_recv_param=0x0)
    at msg_recv.c:407
#6  0xb754ca7a in axis2_engine_receive (engine=0x809ed48, env=0x809d298,
msg_ctx=0x809dcb8) at engine.c:288
#7  0xb75dc387 in axis2_http_transport_utils_process_http_post_request
(env=0x809d298, msg_ctx=0x809dcb8,
    in_stream=0x809d2c0, out_stream=0x809d2f0, content_type=0x809c010
"application/soap+xml;charset=UTF-8",
    content_length=134868296, soap_action_header=0x0,
    request_uri=0x809dec8 "http://127.0.0.1:9090/axis2/services/parseMessage")
at http_transport_utils.c:485
#8  0xb75db7f4 in axis2_http_worker_process_request (http_worker=0x809cb00,
env=0x809d298, svr_conn=0x809d2b0,
    simple_request=0x809d350) at http_worker.c:299
#9  0xb750df94 in axis2_svr_thread_worker_func (thd=0x809d230,
data=0x809cb20) at http_svr_thread.c:256
#10 0xb759a094 in dummy_worker (opaque=0x8093f78) at thread_unix.c:85
#11 0xb73b4dac in start_thread () from /lib/tls/libpthread.so.0
#12 0xb73419ea in clone () from /lib/tls/libc.so.6

Re: Segmentation fault while sending a message to server

Posted by Dimuthu Gamage <di...@gmail.com>.
Hi Sathya,

You seems generating code with ADB (Axis Data Binding) support. That way you
dont need to build the xml  yourself.

But the sample you have referred in the document (the hello.c) is written
not using ADB. The code you wrote simply build the axiom model for an xml
like following
<parseMessage>I am sending a parse Message</parseMessage>

So you may either use ADB (You can get some help from the sample in
samples/codegen/databinding/Calculator) Or
follow the hello.c, i.e without any ADB.

Thanks
Dimuthu


On 9/19/07, Sathya Raghunathan <pa...@gmail.com> wrote:
>
> Hi
>
> I generated code with WSDL2C in axis2java2-1.3.
>
> Once the C code is generated, i compiled the code and made a shared
> library. After this i copied the shared library adn the service.xml to
> services folder in the repository and started the axis2_http_server. When i
> gave http://localhost:9090/soap from browser, i am able to see my service
> running.
> "Deployed Services *parseMessage **Available Operations*
>
>    - parseMessage"
>
> But when i send a message from client I am getting segmentation fault. I
> copied hello.c sample client code, and changed at appropriate places.
>   greet_om_ele = axiom_element_create(env, NULL, "parseMessage", NULL,
> &greet_om_node);
>   axiom_element_set_text(greet_om_ele, env, "I am sending a parse
> Message!", greet_om_node);
>
> And it gave a segmentation fault. Please let me know whether i am sending
> it correctly or not. I am attaching the files generated for input message as
> well as the stack trace. Please help.
>
> Thanks
> Sathya
>
> [Switching to Thread -1222382672 (LWP 6863)]
> 0xb7553a97 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x8094ef0,
> env=0x809d298, msg_ctx=0x0) at msg_recv.c:157
> 157         AXIS2_SVC_SKELETON_INIT((axis2_svc_skeleton_t *)impl_class,
> env);
> (gdb) where
> #0  0xb7553a97 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x8094ef0,
> env=0x809d298, msg_ctx=0x0) at msg_recv.c:157
> #1  0xb7553b2b in axis2_msg_recv_get_impl_obj (msg_recv=0x8094ef0,
> env=0x809d298, msg_ctx=0x809dcb8) at msg_recv.c:184
> #2  0xb75540a9 in axis2_raw_xml_in_out_msg_recv_invoke_business_logic_sync
> (msg_recv=0x8094ef0, env=0x809d298,
>     msg_ctx=0x809dcb8, new_msg_ctx=0x809f580) at
> raw_xml_in_out_msg_recv.c:93
> #3  0xb7553f32 in axis2_msg_recv_invoke_business_logic
> (msg_recv=0x8093f78, env=0x809d298, in_msg_ctx=0x809dcb8,
>     out_msg_ctx=0x809f580) at msg_recv.c:372
> #4  0xb7553db7 in axis2_msg_recv_receive_impl (msg_recv=0x8094ef0,
> env=0x809d298, msg_ctx=0x809dcb8,
>     callback_recv_param=0x0) at msg_recv.c:304
> #5  0xb7553f7e in axis2_msg_recv_receive (msg_recv=0x8093f78,
> env=0x809d298, msg_ctx=0x809dcb8, callback_recv_param=0x0)
>     at msg_recv.c:407
> #6  0xb754ca7a in axis2_engine_receive (engine=0x809ed48, env=0x809d298,
> msg_ctx=0x809dcb8) at engine.c:288
> #7  0xb75dc387 in axis2_http_transport_utils_process_http_post_request
> (env=0x809d298, msg_ctx=0x809dcb8,
>     in_stream=0x809d2c0, out_stream=0x809d2f0, content_type=0x809c010
> "application/soap+xml;charset=UTF-8",
>     content_length=134868296, soap_action_header=0x0,
>     request_uri=0x809dec8 "http://127.0.0.1:9090/axis2/services/parseMessage")
> at http_transport_utils.c:485
> #8  0xb75db7f4 in axis2_http_worker_process_request
> (http_worker=0x809cb00, env=0x809d298, svr_conn=0x809d2b0,
>     simple_request=0x809d350) at http_worker.c:299
> #9  0xb750df94 in axis2_svr_thread_worker_func (thd=0x809d230,
> data=0x809cb20) at http_svr_thread.c:256
> #10 0xb759a094 in dummy_worker (opaque=0x8093f78) at thread_unix.c:85
> #11 0xb73b4dac in start_thread () from /lib/tls/libpthread.so.0
> #12 0xb73419ea in clone () from /lib/tls/libc.so.6
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-c-user-help@ws.apache.org
>
>