You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Gadi Glikberg <Ga...@evolven.com> on 2008/01/17 08:58:38 UTC

FW: svn commit: r554186 - /webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateSource.xsl


From: Milinda Pathirage [mailto:milinda.pathirage@gmail.com]
Sent: Wednesday, January 16, 2008 8:10 PM
To: Gadi Glikberg
Subject: Re: svn commit: r554186 - /webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateSource.xsl

Hi Gadi,
Currently I am not working on this code generation project because of my academic work. As far as I know there are many improvements in current code generation framework and I'm not aware of those things. It's better if you can forward this mail to dev list or user list. Then some one can look on to this issue and devs will help you to resolve this issue. Please forward this to dev list.

Thanks in advance,
Milinda
On Jan 16, 2008 8:10 PM, Gadi Glikberg <Ga...@evolven.com>> wrote:

Hi Milinda,



We are using Axis2c to generate C client to work with our Axis2 Java server.



We generated stub for a server method that accept object that contain array and the server did not

get the value of the object from the C client, looking at SOAPMonitor we saw that the tag that stands

for the parameter name is missing (ns4:obj) -



<?xml version='1.0' encoding='utf-8'?>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

  <soapenv:Body>

    <ns4:registerCheck xmlns:ns4="http://agent.ws.core.server.evolven.com" xmlns:ns3="http://agent.ws.core.server.evolven.com/xsd">

        <ns3:arrayDebugArray>

          <ns3:address>FC-D5-20-52-41-53</ns3:address>



Looking at the generated code, we saw that if we change the serialize method code for the server method

from:

if(has_parent)

axutil_stream_write( stream, env, start_input_str, start_input_str_len);

adb_HW2_serialize( _registerCheck ->attrib_obj, env, current_node, AXIS2_TRUE);

if(has_parent)

            axutil_stream_write(stream, env, end_input_str , end_input_str_len);

to:

if(! has_parent)

axutil_stream_write( stream, env, start_input_str, start_input_str_len);

adb_HW2_serialize( _registerCheck ->attrib_obj, env, current_node, AXIS2_TRUE);

if(! has_parent)

            axutil_stream_write(stream, env, end_input_str , end_input_str_len);



we get a working SOAP envelope:



<?xml version='1.0' encoding='utf-8'?>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

  <soapenv:Body>

    <ns4:registerCheck xmlns:ns4="http://agent.ws.core.server.evolven.com" xmlns:ns3="http://agent.ws.core.server.evolven.com/xsd">

      <ns4:obj>

        <ns3:arrayDebugArray>

          <ns3:address>FC-D5-20-52-41-53</ns3:address>





We are e-mail this problem to you, as we feel the change in the e-mail subject may have caused this issue.



Thank you in advance,



Gadi Glikberg





--
http://think2ed.blogspot.com "thinksquared"
http://wsaxc.blogspot.com "Web Services With Axis2/C"