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 rm <ra...@gmail.com> on 2012/07/14 00:59:33 UTC

Error message when requesting web service

I've used the WSDL2C to generate C++ bindings for an ebay web service, see here 
for the WSDL:

http://developer.ebay.com/webservices/finding/latest/FindingService.wsdl

I have then cross compiled axis2c using scratchbox and then copied both the 
generated code and the libraries to my project (it just worked using the 
axis2_build.sh!)

I've tried to perform the basic of all tasks using the ebay web service 
getVersion which is just a http post to http://svcs.ebay.com/services/search/
FindingService/v1 with headers set to:

CONTENT-TYPE: SOAP12
X-EBAY-SOA-OPERATION-NAME: getVersion

and post body: 

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" 
xmlns="http://www.ebay.com/marketplace/search/v1/services">
<soap:Header/>
<soap:Body>
<getVersionRequest/>
</soap:Body>
</soap:Envelope>

You can try this using restclient (an excellent web service tester!).


However using the code below i still get error messages and Im not able receive 
a response:


int fourthGetVersion() {

    axutil_allocator_t *allocator = axutil_allocator_init(NULL);
    axutil_log_t *log = axutil_log_create(allocator, NULL, "mylog.log");

    axutil_env_t * env = NULL;
    env = axutil_env_create(allocator);

    axis2_char_t *client_home = "/opt/meebay/res/axis2c/axis2.xml";

    // Don't need to set endpoint URI
    axis2_stub_t *stub = NULL;

    stub = axis2_stub_create_FindingService(env, client_home, NULL);

    adb_GetVersionRequest_t *req = NULL;
    req = adb_GetVersionRequest_create(env);

    adb_getVersionRequestE8_t *reqE8 = NULL;
    reqE8 = adb_getVersionRequestE8_create_with_values(env, req);

    adb_getVersionResponseE3_t *res = NULL;

    axutil_array_list_t *headers = NULL;

    headers = axutil_array_list_create(env,5);

    axutil_array_list_add(headers, env, "X-EBAY-SOA-OPERATION-NAME: 
getVersion");

    axis2_options_t *options = NULL;

    options = axis2_stub_get_options(stub, env);

    axis2_options_set_http_headers(options, env, headers);

    res = axis2_stub_op_FindingService_getVersion(stub,env,reqE8);


    if (!res) {
        return -1;
    }

}


Part of the messages are specific to my ARM device, the important lines are the 
ones with [error] in them:

.......o you need "set solib-search-path" or "set sysroot"?Found SGX/MBX 
driver, enabling FullClearOnEveryFrame 
Found v1.4 driver, enabling brokenTexSubImage 
AXIS2C_HOME is not set - log is written to . dir
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*rest_dispatcher added to the index 0 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*soap_message_body_based_dispatcher added to the index 1 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*dispatch_post_conditions_evaluator added to the index 0 of the phase 
PostDispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*context_handler added to the index 1 of the phase PostDispatch
[Fri Jul 13 23:42:45 2012] [debug] conf_builder.c(234) No custom dispatching 
order found. Continue with the default dispatching order
Could not load shared library symbols for /opt/meebay/lib/
libaxis2_http_sender.so.
Do you need "set solib-search-path" or "set sysroot"?[Fri Jul 13 23:42:51 2012] 
[debug] class_loader.c(140) /opt/meebay/lib/libaxis2_http_sender.so shared lib 
loaded successfully
Could not load shared library symbols for /opt/meebay/lib/
libaxis2_http_receiver.so.
Do you need "set solib-search-path" or "set sysroot"?[Fri Jul 13 23:42:57 2012] 
[debug] class_loader.c(140) /opt/meebay/lib/libaxis2_http_receiver.so shared 
lib loaded successfully
[Fri Jul 13 23:42:57 2012] [info]  No files in the path /opt/meebay/res/axis2c/
modules.
[Fri Jul 13 23:42:57 2012] [info]  No files in the path /opt/meebay/res/axis2c/
services.
[Fri Jul 13 23:42:57 2012] [debug] dep_engine.c(1042) No modules configured
[Fri Jul 13 23:42:57 2012] [debug] phase_resolver.c(139) Service name is : 
__ANONYMOUS_SERVICE__
[Fri Jul 13 23:43:43 2012] [error] om_element.c(283) Wrong element type or null 
node
[Fri Jul 13 23:43:49 2012] [debug] op_client.c(888) 
Start:axis2_op_client_infer_transport
[Fri Jul 13 23:43:49 2012] [error] op_client.c(949) Cannot infer transport
[Fri Jul 13 23:43:49 2012] [debug] op_client.c(954) 
End:axis2_op_client_infer_transport
[Fri Jul 13 23:43:49 2012] [error] op_client.c(407) Op client execute failed. 
Cannot find transport out.



I would really appreciate some help with this.

Thanks


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


RE: Error message when requesting web service

Posted by George Loring <Ge...@wal-mart.com>.
Hi, this is just a shot in the dark, but with services we've developed we set the client_home value to only the directory that contains the axis2.xml file.  We don't include the filename in that value.  I think it uses the client_home value as the directory and tacks on the axis2.xml stuff at the end.  This could be the reason you are later getting those transport errors because the information on what is used for sending and receiving is configured in that axis2.xml file.

-----Original Message-----
From: rm [mailto:rash.m2k@gmail.com] 
Sent: Friday, July 13, 2012 6:00 PM
To: c-user@axis.apache.org
Subject: Error message when requesting web service

I've used the WSDL2C to generate C++ bindings for an ebay web service, see here 
for the WSDL:

http://developer.ebay.com/webservices/finding/latest/FindingService.wsdl

I have then cross compiled axis2c using scratchbox and then copied both the 
generated code and the libraries to my project (it just worked using the 
axis2_build.sh!)

I've tried to perform the basic of all tasks using the ebay web service 
getVersion which is just a http post to http://svcs.ebay.com/services/search/
FindingService/v1 with headers set to:

CONTENT-TYPE: SOAP12
X-EBAY-SOA-OPERATION-NAME: getVersion

and post body: 

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" 
xmlns="http://www.ebay.com/marketplace/search/v1/services">
<soap:Header/>
<soap:Body>
<getVersionRequest/>
</soap:Body>
</soap:Envelope>

You can try this using restclient (an excellent web service tester!).


However using the code below i still get error messages and Im not able receive 
a response:


int fourthGetVersion() {

    axutil_allocator_t *allocator = axutil_allocator_init(NULL);
    axutil_log_t *log = axutil_log_create(allocator, NULL, "mylog.log");

    axutil_env_t * env = NULL;
    env = axutil_env_create(allocator);

    axis2_char_t *client_home = "/opt/meebay/res/axis2c/axis2.xml";

    // Don't need to set endpoint URI
    axis2_stub_t *stub = NULL;

    stub = axis2_stub_create_FindingService(env, client_home, NULL);

    adb_GetVersionRequest_t *req = NULL;
    req = adb_GetVersionRequest_create(env);

    adb_getVersionRequestE8_t *reqE8 = NULL;
    reqE8 = adb_getVersionRequestE8_create_with_values(env, req);

    adb_getVersionResponseE3_t *res = NULL;

    axutil_array_list_t *headers = NULL;

    headers = axutil_array_list_create(env,5);

    axutil_array_list_add(headers, env, "X-EBAY-SOA-OPERATION-NAME: 
getVersion");

    axis2_options_t *options = NULL;

    options = axis2_stub_get_options(stub, env);

    axis2_options_set_http_headers(options, env, headers);

    res = axis2_stub_op_FindingService_getVersion(stub,env,reqE8);


    if (!res) {
        return -1;
    }

}


Part of the messages are specific to my ARM device, the important lines are the 
ones with [error] in them:

.......o you need "set solib-search-path" or "set sysroot"?Found SGX/MBX 
driver, enabling FullClearOnEveryFrame 
Found v1.4 driver, enabling brokenTexSubImage 
AXIS2C_HOME is not set - log is written to . dir
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*request_uri_based_dispatcher added to the index 0 of the phase Transport
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*addressing_based_dispatcher added to the index 1 of the phase Transport
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*rest_dispatcher added to the index 0 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*soap_message_body_based_dispatcher added to the index 1 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*soap_action_based_dispatcher added to the index 2 of the phase Dispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*dispatch_post_conditions_evaluator added to the index 0 of the phase 
PostDispatch
[Fri Jul 13 23:42:45 2012] [debug] phase.c(121) axis2_handler_t 
*context_handler added to the index 1 of the phase PostDispatch
[Fri Jul 13 23:42:45 2012] [debug] conf_builder.c(234) No custom dispatching 
order found. Continue with the default dispatching order
Could not load shared library symbols for /opt/meebay/lib/
libaxis2_http_sender.so.
Do you need "set solib-search-path" or "set sysroot"?[Fri Jul 13 23:42:51 2012] 
[debug] class_loader.c(140) /opt/meebay/lib/libaxis2_http_sender.so shared lib 
loaded successfully
Could not load shared library symbols for /opt/meebay/lib/
libaxis2_http_receiver.so.
Do you need "set solib-search-path" or "set sysroot"?[Fri Jul 13 23:42:57 2012] 
[debug] class_loader.c(140) /opt/meebay/lib/libaxis2_http_receiver.so shared 
lib loaded successfully
[Fri Jul 13 23:42:57 2012] [info]  No files in the path /opt/meebay/res/axis2c/
modules.
[Fri Jul 13 23:42:57 2012] [info]  No files in the path /opt/meebay/res/axis2c/
services.
[Fri Jul 13 23:42:57 2012] [debug] dep_engine.c(1042) No modules configured
[Fri Jul 13 23:42:57 2012] [debug] phase_resolver.c(139) Service name is : 
__ANONYMOUS_SERVICE__
[Fri Jul 13 23:43:43 2012] [error] om_element.c(283) Wrong element type or null 
node
[Fri Jul 13 23:43:49 2012] [debug] op_client.c(888) 
Start:axis2_op_client_infer_transport
[Fri Jul 13 23:43:49 2012] [error] op_client.c(949) Cannot infer transport
[Fri Jul 13 23:43:49 2012] [debug] op_client.c(954) 
End:axis2_op_client_infer_transport
[Fri Jul 13 23:43:49 2012] [error] op_client.c(407) Op client execute failed. 
Cannot find transport out.



I would really appreciate some help with this.

Thanks


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

This email and any files transmitted with it are confidential and intended solely for the individual or entity to whom they are addressed. If you have received this email in error destroy it immediately. *** Walmart Confidential ***

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