You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Michael Xiong (JIRA)" <ax...@ws.apache.org> on 2006/06/05 09:50:30 UTC

[jira] Commented: (AXISCPP-931) WSDL2WS generates wrong Class Name

    [ http://issues.apache.org/jira/browse/AXISCPP-931?page=comments#action_12414705 ] 

Michael Xiong commented on AXISCPP-931:
---------------------------------------

Hello Adrian,

I've verified this problem: AXISCPP-931 on axis-c-1.6beta version, It's OK there.

Thanks.
Best regards.
Michael Xiong

> WSDL2WS generates wrong Class Name
> ----------------------------------
>
>          Key: AXISCPP-931
>          URL: http://issues.apache.org/jira/browse/AXISCPP-931
>      Project: Axis-C++
>         Type: Bug

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

>
> [Error Statement]: 
> We have used AxisCPP1.5final version to generate SampleTestSoapWrapper.cpp as the below:
> Function: int SampleTestSoapWrapper::GetOperation(void* pMsg)
> try
> {
>      pIWSSZ->addOutputCmplxParam(out0, (void*)Axis_Serialize_ContainerInfo, (void*)          Axis_Delete_ContainerInfo, ">GetOperationResponse>Container", Axis_URI_ContainerInfo);
> 		pIWSSZ->addOutputCmplxParam(out1, (void*)Axis_Serialize_PropertyList, (void*)Axis_Delete_PropertyList, ">GetOperationResponse>PropertyList", Axis_URI_PropertyList);
> }
> The generated code has bug: ">GetOperationResponse>Container" and ">GetOperationResponse>PropertyList".
> In the function we need parameter  "Container" other than  ">GetOperationResponse>Container".
> [Our solution]:
> We have investigated the source code of AxisCPP/WSDL2Ws tool, and found that if we add the following code at about line 626 in writeMethodInWrapper method that belongs to WrapWriter (wsdl2ws/cpp/iteral) class, the above bug can be resolved.
> //returnParamName=param.getElementName().getLocalPart();
> if(returnParamName.lastIndexOf(">")>1)
> {
> 	returnParamName=
> 		returnParamName.substring(returnParamName.lastIndexOf(">")+1,returnParamName.length());
> }
> [More suggestion]:
> But we think it may be better to resolve this bug by change some code inside getElementName()(in ParameterInfo class) method or inside getLocalPart()(in QName class)

-- 
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


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