Hi Nadir,
I too noticed this in Windows platform. I tried to fix it from the
client code by doing following changes. Then the client is compiling and
able to run. But the serialization and deserialization is wrong.
Changes in the client file:
int * * a;
int* aa = new int;
*aa = 5;
a = &aa;
Value0->IntValue = a;
The client request and server response lokk like the following.
Request:
POST /axis/CombinedChoice HTTP/1.1
Host: localhost:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: "SimpleChoiceTest#echoChoice"
Content-Length: 579
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:echoChoice xmlns:ns1="http://soapinterop.org/">
<ns1:inputChoice
xmlns:ns2="http://soapinterop.org/xsd"><ns2:NonChoiceIntValue>5</ns2:Non
ChoiceIntValue>
<ns2:IntValue>3353928</ns2:IntValue> <============= wrong serialization
<ns2:NonChoiceStringValue>NonChoiceStringValue</ns2:NonChoiceStringValue
>
</ns1:inputChoice>
</ns1:echoChoice>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Response:
HTTP/1.1 200 OK
Date: Mon, 19 Dec 2005 09:38:35 GMT
Server: Apache/2.0.54 (Win32)
Content-Length: 579
Content-Type: text/xml
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:echoChoiceResponse xmlns:ns1="http://soapinterop.org/">
<_return
xmlns:ns2="http://soapinterop.org/xsd"><ns2:NonChoiceIntValue>5</ns2:Non
ChoiceIntValue>
<ns2:IntValue>9176872</ns2:IntValue>
<ns2:NonChoiceStringValue>NonChoiceStringValue</ns2:NonChoiceStringValue
>
</_return>
</ns1:echoChoiceResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Thanks
Dushshantha
-----Original Message-----
From: Nadir Amra [mailto:[EMAIL PROTECTED]
Sent: Monday, December 19, 2005 7:30 AM
To: Apache AXIS C Developers List
Subject: compile failure of test CombinedChoice.xml
Kicking the tires on the new memory management fixes.
While attempting to run test
c/tests/auto_build/testcases/tests/CombinedChoice.xml, I get a compile
error when compiling CombinedChoiceClient.cpp. Here are the errors:
[cc]
"/home/amra/axis/L051218/obj/test/generated/cpp/UnitTest_CombinedChoice/
CombinedChoiceClient.cpp",
line 15.36: CZP021
6(30) An expression of type "int *" cannot be converted to type "int
**".
[cc]
"/home/amra/axis/L051218/obj/test/generated/cpp/UnitTest_CombinedChoice/
CombinedChoiceClient.cpp",
line 16.39: CZP02
16(30) An expression of type "int" cannot be converted to type "int *".
The offending lines in the code are the two lines after the
instantiation
of the object:
ChoiceComplexType* Value0=new ChoiceComplexType();
Value0->IntValue = new int;
*(Value0->IntValue) = 5;
The header file defines the field as:
xsd__int* * IntValue;
So my question is what is it suppose to be and how is it working on
other
platforms?
Nadir K. Amra