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

Code Generation re-initializes array variables with the same name.

    Details

      Description

      When generating (de)serialization code that has multiple arrays the code generator will not uniquely name each array within the same scope.

      RemoteVersion_Array * array0 = new RemoteVersion_Array();
      array0 = (RemoteVersion_Array ) pIWSDZ->getCmplxArray(array0, (void)Axis_DeSerialize_RemoteVersion,
      (void*)Axis_Create_RemoteVersion,
      (void*)Axis_Delete_RemoteVersion,
      (void*)Axis_GetSize_RemoteVersion,
      "affectsVersions", Axis_URI_RemoteVersion);

      param->affectsVersions = array0;

      xsd__string* p_assignee = (pIWSDZ->getElementAsString("assignee",0));
      param->assignee = *p_assignee;
      delete p_assignee;
      Axis_Array * array0 = pIWSDZ->getBasicArray(XSD_STRING, "attachmentNames",0);
      if(param->attachmentNames == NULL)

      { param->attachmentNames = new xsd__string_Array(); }

      param->attachmentNames->clone( *array0);
      Axis::AxisDelete((void*) array0, XSD_ARRAY);

      RemoteComponent_Array * array0 = new RemoteComponent_Array();
      array0 = (RemoteComponent_Array ) pIWSDZ->getCmplxArray(array0, (void)Axis_DeSerialize_RemoteComponent,
      (void*)Axis_Create_RemoteComponent,
      (void*)Axis_Delete_RemoteComponent,
      (void*)Axis_GetSize_RemoteComponent,
      "components", Axis_URI_RemoteComponent);

      param->components = array0;

      xsd__dateTime* p_created = (pIWSDZ->getElementAsDateTime("created",0));
      param->created = *p_created;
      delete p_created;
      RemoteCustomFieldValue_Array * array0 = new RemoteCustomFieldValue_Array();
      array0 = (RemoteCustomFieldValue_Array ) pIWSDZ->getCmplxArray(array0, (void)Axis_DeSerialize_RemoteCustomFieldValue,
      (void*)Axis_Create_RemoteCustomFieldValue,
      (void*)Axis_Delete_RemoteCustomFieldValue,
      (void*)Axis_GetSize_RemoteCustomFieldValue,
      "customFieldValues", Axis_URI_RemoteCustomFieldValue);

      param->customFieldValues = array0;

      A wsdl to demonstrate can be found here:
      https://issues.apache.org/jira/rpc/soap/jirasoapservice-v2?wsdl

        Activity

        Matthew Metke created issue -
        nadir amra made changes -
        Field Original Value New Value
        Status Open [ 1 ] Closed [ 6 ]
        Fix Version/s current (nightly) [ 10476 ]
        Resolution Fixed [ 1 ]
        Mark Thomas made changes -
        Workflow jira [ 12412434 ] Default workflow, editable Closed status [ 12556021 ]
        Mark Thomas made changes -
        Workflow Default workflow, editable Closed status [ 12556021 ] jira [ 12579065 ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Matthew Metke
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development