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 Nadir Amra <am...@us.ibm.com> on 2005/12/23 23:23:35 UTC

new memory model problems with testcases

Hi Dushshantha,

Thanks for fixing. In InteropTestRound1Client.cpp, I corrected the 
SOAPStruct and added further checks to check for returned array sizes 
before assuming success. For example:

        xsd__string_Array arrstr;
        xsd__string* sToSend = new xsd__string[ARRAYSIZE];
        sprintf(buffer1, "%dth element of string array", 0);
        sprintf(buffer2, "%dst element of string array", 1);
        sToSend[0]= buffer1;
        sToSend[1]= buffer2;
 
        arrstr.set(sToSend, ARRAYSIZE);
 
        ws.setTransportProperty("SOAPAction" , 
"InteropBase#echoStringArray");
        printf("invoking echoStringArray...\n");
        int outputSize = 0;
        xsd__string_Array* outPutStrArray = ws.echoStringArray(&arrstr);
        if (outPutStrArray != NULL && 
          outPutStrArray->get(outputSize) != NULL && 
          outputSize == ARRAYSIZE)
                printf("successful\n");
        else
                printf("failed: outputsize=%d\n", outputSize);

Assuming my if-check above is correct, the array size checks fail (always 
zero).  I am assuming that is the problem you were mentioning with 
deserialization?  Andrew will have to look at this further although I will 
continue to see if I can resolve.

Nadir K. Amra


"Dushshantha Chandradasa" <dc...@virtusa.com> wrote on 12/23/2005 
01:11:23 AM:

> Hi Nadir,
> The problem is with the Client implementation. It was not suit to the
> new memory model. I fixed some of these problems and committed the
> changes. I commented out the SOAPStruct array part in the file. Have to
> correct that as well. 
> 
> Regards,
> Dushshantha 
>