Hi All,

 

I am encountering a serious problem upgrading axis2/c from 1.3 to 1.5.
Basically, I noticed that in 1.5 the response always leaves out the root
node in the soap message. I have the following simplified code snippet:

 

===================================

axiom_node_t * responseNode =
axis2_svc_client_send_receive(_wsf_service_client, _env, payload);

 

xml_writer = axiom_xml_writer_create_for_memory(_env, NULL, AXIS2_TRUE,
0, AXIS2_XML_PARSER_TYPE_BUFFER);

 

om_output = axiom_output_create(_env, xml_writer);

 

//add xsi namespace definition, this seems to be a bug in axiom.

axiom_namespace_t* ns_xsi =  axiom_namespace_create(_env,
"http://www.w3.org/2001/XMLSchema-instance";, "xsi");

 

axiom_element_t* node_ele  = (axiom_element_t*)
axiom_node_get_data_element(responseNode, _env);

            

axiom_element_declare_namespace_assume_param_ownership(node_ele, _env,
ns_xsi);

 

axiom_node_serialize_sub_tree(node, _env, om_output);

 

xmlreply = (axis2_char_t*)axiom_xml_writer_get_xml(xml_writer, _env);

 

 

In Axis2/c 1.3, I used to have a response (xmlreply) like this:

 

<localtypes:pingVersion
xmlns:localtypes="http://www.xxx.com/yyy/ServerXXX.xsd";

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";><version>Product
version 12.2.0.0</version></localtypes:pingVersion>

 

But in 1.5, I ONLY got the following:

 

 <version>Product version 12.2.0.0</version>

 

That is, the root node <localtypes:pingVersion> is somehow missing. 

 

Is there anything I am missing, or the interface changed and I need to
call a different method to serialize?

 

Thanks much!

Srini

 

Reply via email to