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: FX SDCC
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