axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Abby Thompson <Abby.Thomp...@dreamworks.com>
Subject core dumping when pulling external library into service
Date Wed, 14 Nov 2007 18:04:07 GMT
Hi Axis2c user list,

It looks like I'm having the same problem that was described here...

http://mail-archives.apache.org/mod_mbox/ws-axis-c-user/200706.mbox/%3c46687CDD.2010705@progexia.net%3e

<http://mail-archives.apache.org/mod_mbox/ws-axis-c-user/200706.mbox/%3c46687CDD.2010705@progexia.net%3e>

But even though the .so is in my services folder, I'm still having problems.

I'm using Axis2c 1.0.0, 32 bit (built from source), Redhat WS4.

I took the sample hello program described in the axis2c docs and tried 
to include my own library.  I created a .so out of the .o files named 
libmsd.so and placed it with the rest of the  axis2c libs.  I also 
copied the .h file in the include directory.  I then compile the service 
this way...

gcc -shared hello_svc.c -olibhello.so -I$AXIS2C_HOME/include/axis2-1.0/ 
-L$AXIS2C_HOME/lib -laxis2 -lmsd

I then drop my newly built libhello.so into the services/hello folder, 
as instructed. 

Below is my hello_svc.c include line section...

#include <axis2_svc_skeleton.h>
#include <axutil_log_default.h>
#include <axutil_error_default.h>
#include <axutil_array_list.h>
#include <axiom_text.h>
#include <axiom_node.h>
#include <axiom_element.h>
#include <stdio.h>
//MY OWN LIB MSD.
#include "msd.h"

It compiles fine, but when I attempt to run the hello client, the server 
seg faults.  If I  remove all reference to my own msd file and 
recompile, the service runs without any problem.  I'm seeing this error 
on the server side in gdb (it's probably breaking in the init section 
because this is where I first attempt to call my external lib (msd))...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1208796256 (LWP 12310)]
0x00d15f43 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x996f450,
   env=0x99bf830, msg_ctx=0x99c0270) at msg_recv.c:157
157         AXIS2_SVC_SKELETON_INIT((axis2_svc_skeleton_t *)impl_class, 
env);
(gdb) bt
#0  0x00d15f43 in axis2_msg_recv_make_new_svc_obj (msg_recv=0x996f450,
   env=0x99bf830, msg_ctx=0x99c0270) at msg_recv.c:157
#1  0x00d15fe3 in axis2_msg_recv_get_impl_obj (msg_recv=0x996f450,
   env=0x99bf830, msg_ctx=0x99c0270) at msg_recv.c:184
#2  0x00d16596 in axis2_raw_xml_in_out_msg_recv_invoke_business_logic_sync (
   msg_recv=0x996f450, env=0x99bf830, msg_ctx=0x99c0270,
   new_msg_ctx=0x99c7628) at raw_xml_in_out_msg_recv.c:93
#3  0x00d161ea in axis2_msg_recv_invoke_business_logic (msg_recv=0x99bf830,
   env=0x99bf830, in_msg_ctx=0x99c0270, out_msg_ctx=0x99c7628)
   at msg_recv.c:372
#4  0x00d162a7 in axis2_msg_recv_receive_impl (msg_recv=0x996f450,
   env=0x99bf830, msg_ctx=0x99c0270, callback_recv_param=0x0)
   at msg_recv.c:304
#5  0x00d16466 in axis2_msg_recv_receive (msg_recv=0x99bf830, env=0x99bf830,
   msg_ctx=0x99c0270, callback_recv_param=0x0) at msg_recv.c:407
#6  0x00d0f497 in axis2_engine_receive (engine=0x99c71a0, env=0x99bf830,
   msg_ctx=0x99c0270) at engine.c:288
#7  0x00d7f02c in axis2_http_transport_utils_process_http_post_request (
   env=0x99bf830, msg_ctx=0x99c0270, in_stream=0x99bf858,
   out_stream=0x99bfa38,
   content_type=0x9952fc0 "application/soap+xml;charset=UTF-8",
   content_length=183, soap_action_header=0x0,
   request_uri=0x99c03d8 "http://127.0.0.1:9090/axis2/services/hello 
<http://127.0.0.1:9090/axis2/services/hello>")
---Type <return> to continue, or q <return> to quit---
   at http_transport_utils.c:485
#8  0x00d7d991 in axis2_http_worker_process_request (http_worker=0x99bf018,
   env=0x99bf830, svr_conn=0x99bf848, simple_request=0x99bf8d8)
   at http_worker.c:299
#9  0x00aa7dc8 in axis2_svr_thread_worker_func (thd=0x99bf780, 
data=0x99bf038)
   at http_svr_thread.c:256
#10 0x00a53068 in dummy_worker (opaque=0x99bf830) at thread_unix.c:85
#11 0x001393cc in start_thread () from /lib/tls/libpthread.so.0
#12 0x0021e3ce in clone () from /lib/tls/libc.so.6

This is my service.xml file for the hello service...

<service name="hello">
  <parameter name="ServiceClass" locked="xsd:false">hello</parameter>
  <description>
       Quick start guide hello service sample.
  </description>
  <operation name="greet"/>
</service>


Any help on this would be great!  I've been stuck on this for a while now...

-abby


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org


Mime
View raw message