Axis-C++
  1. Axis-C++
  2. AXISCPP-966

WSDL2WS generate wrong code: redundant value reference * in Wrapper

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.6 Beta
    • Fix Version/s: current (nightly)
    • Component/s: WSDL processing - RPC
    • Labels:
      None
    • Environment:

      Description

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

        Activity

        Michael Xiong created issue -
        Adrian Dick made changes -
        Field Original Value New Value
        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
           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
        nadir amra made changes -
        Resolution Fixed [ 1 ]
        Status Open [ 1 ] Closed [ 6 ]
        Fix Version/s current (nightly) [ 10476 ]
        Mark Thomas made changes -
        Workflow jira [ 12361532 ] Default workflow, editable Closed status [ 12556414 ]
        Mark Thomas made changes -
        Workflow Default workflow, editable Closed status [ 12556414 ] jira [ 12579693 ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Michael Xiong
          • Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development