axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adrian Dick (JIRA)" <axis-c-...@ws.apache.org>
Subject [jira] Commented: (AXISCPP-966) WSDL2WS generate wrong code: redundant value reference * in Wrapper
Date Tue, 25 Apr 2006 08:30:06 GMT
    [ http://issues.apache.org/jira/browse/AXISCPP-966?page=comments#action_12376195 ] 

Adrian Dick commented on AXISCPP-966:
-------------------------------------

Hi,

I agree this code doens't look right ... would it be possible to attach your WSDL file so
we can reproduce the problem you're seeing, and also validate your suggested fix.

Have you tried the latest nightly builds, as there have been some recent changes in this area
which may potentially have resolved this problem.

Thanks,
Adrian

> WSDL2WS generate wrong code: redundant value reference * in Wrapper
> -------------------------------------------------------------------
>
>          Key: AXISCPP-966
>          URL: http://issues.apache.org/jira/browse/AXISCPP-966
>      Project: Axis-C++
>         Type: Bug

>   Components: WSDL processing - RPC
>     Versions:  1.6 Beta
>  Environment:    Platform:
>         Linux fedora 3.0
> Axis version:
>         Server-side Axis C++ 1.6Beta
> XML Parser Lib:
> xersesc 2.6
> WSDL2ws tool by using axis java 1.3
> Client-side version Axis java 1.3
> Http Server Version:
> Apache 2.0.53
> Tomcat 2.0.58
>     Reporter: Michael Xiong
>     Priority: Critical

>
> [Error Statement]:
> I have used AxisCPP1.6Beta version to generate SampleTestSoapWrapper.cpp as the below:
> Function: int SampleTestSoapWrapper::GetOperation(void* pMsg)
> xsd_string v0 = *(pIWSDZ->getElementAsString("ListType", 0));
> The generated code has bug: xsd_string is already indeed a "char *", so should not reference
it's content by "*".
> The correct code I expected is:
> xsd_string v0 = pIWSDZ->getElementAsString("ListType", 0);
> [solution]:
> I have investigated the source code of AxisCPP/WSDL2Ws tool, and found that if I modify
the following code at about line 217~234 in writeMethodInWrapper method that belongs to WrapWriter
(wsdl2ws/cpp/iteral) class, the above bug can be resolved.
>             	else
>             	{
>             	    
>             		writer.write(
>                             "\t"
>                                 + paraTypeName
>                                 + " v"
>                                 + i
> //<mxiong debug 20060425                                
>                                 + " = pIWSDZ->"
> //                                + " = *(pIWSDZ->"
> //>mxiong debug 20060425                                
>                                 + CUtils.getParameterGetValueMethodName(
>                                     paraTypeName,
>                                     false)
>                                 + "(\""
>                                 + elementName
> //                              <mxiong debug 20060425                           
    
> //                                + "\",0));\n");
>                                 + "\",0);\n");
> //            		>mxiong debug 20060425                                
>             	}
> So I think it's a bug.
> [other]
> I will create a patch for you and upload it later.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message