You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by virtan <vi...@virtan.com> on 2009/01/02 23:45:40 UTC
autogenerated class misinterprets type of its member
(C++)
Found 2 bugs with compiling autogenerated classes.
1. Function selection error
During compile of autogenerated file I've got the following error:
autogenerated_file.cpp:220: error: 'class
axiscpp::IWrapperSoapDeSerializer' has no member named 'null'
autogenerated_file.cpp:223: error: 'null' was not declared in this scope
$ head -n 220 autogenerated_file.cpp | tail -n 1
if ((ZIP = pIWSDZ->null( "ZIP",0)) != NULL)
where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer,
passed as arg in autogenerated function.
It is right: there are no "null" method in IWrapperSoapDeSerializer:
$ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp
0
2. Misinterpreting of field type (looks like it is a reason of 1.)
The same autogenerated file, also ZIP.
original is an instance of autogenerated class.
Code
if (original.ZIP != NULL)
{
ZIP = new autogenerated_class(*(original.ZIP));
}
else
{
ZIP = NULL;
}
causes
same_autogenerated_file.cpp:309: warning: NULL used in arithmetic
same_autogenerated_file.cpp:311: error: invalid type argument of
'unary *'
It looks correct, because class of ZIP is defined as "xsd__int".
--
virtan / virtan@virtan.com / http://www.virtan.com
RE: AXISCPP: autogenerated class misinterprets type of its member
Posted by "McCullough, Ryan" <rm...@rightnow.com>.
If you tried with the version in SVN, then an example WSDL would be helpful.
-----Original Message-----
From: virtan [mailto:virtan@virtan.com]
Sent: Saturday, January 03, 2009 12:12 AM
To: Apache AXIS C User List
Subject: Re: AXISCPP: autogenerated class misinterprets type of its member
On 03.01.2009, at 4:27, Nadir Amra wrote:
> Are you using the latest code base in SVN? If not, try that. The
> existing
> binaries are buggy and very old. If you are, need WSDL to recreate
> problem.
I've tried.
Can't compile binary - some problems with linkage (will describe in
more details soon).
Also your autotools files are broken, but it can be fixed.
>
>
> Nadir Amra
>
> virtan <vi...@virtan.com> wrote on 01/02/2009 04:45:40 PM:
>
>> [image removed]
>>
>> autogenerated class misinterprets type of its member
>>
>> virtan
>>
>> to:
>>
>> Apache AXIS C User List
>>
>> 01/02/2009 04:52 PM
>>
>> Please respond to "Apache AXIS C User List"
>>
>> (C++)
>>
>> Found 2 bugs with compiling autogenerated classes.
>>
>>
>> 1. Function selection error
>>
>> During compile of autogenerated file I've got the following error:
>> autogenerated_file.cpp:220: error: 'class
>> axiscpp::IWrapperSoapDeSerializer' has no member named 'null'
>> autogenerated_file.cpp:223: error: 'null' was not declared in this
>> scope
>>
>> $ head -n 220 autogenerated_file.cpp | tail -n 1
>> if ((ZIP = pIWSDZ->null( "ZIP",0)) != NULL)
>> where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer,
>> passed as arg in autogenerated function.
>>
>> It is right: there are no "null" method in IWrapperSoapDeSerializer:
>>
>> $ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp
>> 0
>>
>>
>> 2. Misinterpreting of field type (looks like it is a reason of 1.)
>>
>> The same autogenerated file, also ZIP.
>> original is an instance of autogenerated class.
>>
>> Code
>> if (original.ZIP != NULL)
>> {
>> ZIP = new autogenerated_class(*(original.ZIP));
>> }
>> else
>> {
>> ZIP = NULL;
>> }
>> causes
>> same_autogenerated_file.cpp:309: warning: NULL used in arithmetic
>> same_autogenerated_file.cpp:311: error: invalid type argument of
>> 'unary *'
>>
>> It looks correct, because class of ZIP is defined as "xsd__int".
>>
>> --
>> virtan / virtan@virtan.com / http://www.virtan.com
>>
>
--
virtan / virtan@virtan.com / http://www.virtan.com
RE: AXISCPP: autogenerated class misinterprets type of its member
Posted by "McCullough, Ryan" <rm...@rightnow.com>.
Also, don't forget to include the command line you use to generate the Axis C++ soap stubs.
-----Original Message-----
From: McCullough, Ryan
Sent: Tuesday, January 06, 2009 4:46 PM
To: Apache AXIS C User List
Subject: RE: AXISCPP: autogenerated class misinterprets type of its member
If you tried with the version in SVN, then an example WSDL would be helpful.
-----Original Message-----
From: virtan [mailto:virtan@virtan.com]
Sent: Saturday, January 03, 2009 12:12 AM
To: Apache AXIS C User List
Subject: Re: AXISCPP: autogenerated class misinterprets type of its member
On 03.01.2009, at 4:27, Nadir Amra wrote:
> Are you using the latest code base in SVN? If not, try that. The
> existing
> binaries are buggy and very old. If you are, need WSDL to recreate
> problem.
I've tried.
Can't compile binary - some problems with linkage (will describe in
more details soon).
Also your autotools files are broken, but it can be fixed.
>
>
> Nadir Amra
>
> virtan <vi...@virtan.com> wrote on 01/02/2009 04:45:40 PM:
>
>> [image removed]
>>
>> autogenerated class misinterprets type of its member
>>
>> virtan
>>
>> to:
>>
>> Apache AXIS C User List
>>
>> 01/02/2009 04:52 PM
>>
>> Please respond to "Apache AXIS C User List"
>>
>> (C++)
>>
>> Found 2 bugs with compiling autogenerated classes.
>>
>>
>> 1. Function selection error
>>
>> During compile of autogenerated file I've got the following error:
>> autogenerated_file.cpp:220: error: 'class
>> axiscpp::IWrapperSoapDeSerializer' has no member named 'null'
>> autogenerated_file.cpp:223: error: 'null' was not declared in this
>> scope
>>
>> $ head -n 220 autogenerated_file.cpp | tail -n 1
>> if ((ZIP = pIWSDZ->null( "ZIP",0)) != NULL)
>> where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer,
>> passed as arg in autogenerated function.
>>
>> It is right: there are no "null" method in IWrapperSoapDeSerializer:
>>
>> $ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp
>> 0
>>
>>
>> 2. Misinterpreting of field type (looks like it is a reason of 1.)
>>
>> The same autogenerated file, also ZIP.
>> original is an instance of autogenerated class.
>>
>> Code
>> if (original.ZIP != NULL)
>> {
>> ZIP = new autogenerated_class(*(original.ZIP));
>> }
>> else
>> {
>> ZIP = NULL;
>> }
>> causes
>> same_autogenerated_file.cpp:309: warning: NULL used in arithmetic
>> same_autogenerated_file.cpp:311: error: invalid type argument of
>> 'unary *'
>>
>> It looks correct, because class of ZIP is defined as "xsd__int".
>>
>> --
>> virtan / virtan@virtan.com / http://www.virtan.com
>>
>
--
virtan / virtan@virtan.com / http://www.virtan.com
Re: AXISCPP: autogenerated class misinterprets type of its member
Posted by virtan <vi...@virtan.com>.
On 03.01.2009, at 4:27, Nadir Amra wrote:
> Are you using the latest code base in SVN? If not, try that. The
> existing
> binaries are buggy and very old. If you are, need WSDL to recreate
> problem.
I've tried.
Can't compile binary — some problems with linkage (will describe in
more details soon).
Also your autotools files are broken, but it can be fixed.
>
>
> Nadir Amra
>
> virtan <vi...@virtan.com> wrote on 01/02/2009 04:45:40 PM:
>
>> [image removed]
>>
>> autogenerated class misinterprets type of its member
>>
>> virtan
>>
>> to:
>>
>> Apache AXIS C User List
>>
>> 01/02/2009 04:52 PM
>>
>> Please respond to "Apache AXIS C User List"
>>
>> (C++)
>>
>> Found 2 bugs with compiling autogenerated classes.
>>
>>
>> 1. Function selection error
>>
>> During compile of autogenerated file I've got the following error:
>> autogenerated_file.cpp:220: error: 'class
>> axiscpp::IWrapperSoapDeSerializer' has no member named 'null'
>> autogenerated_file.cpp:223: error: 'null' was not declared in this
>> scope
>>
>> $ head -n 220 autogenerated_file.cpp | tail -n 1
>> if ((ZIP = pIWSDZ->null( "ZIP",0)) != NULL)
>> where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer,
>> passed as arg in autogenerated function.
>>
>> It is right: there are no "null" method in IWrapperSoapDeSerializer:
>>
>> $ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp
>> 0
>>
>>
>> 2. Misinterpreting of field type (looks like it is a reason of 1.)
>>
>> The same autogenerated file, also ZIP.
>> original is an instance of autogenerated class.
>>
>> Code
>> if (original.ZIP != NULL)
>> {
>> ZIP = new autogenerated_class(*(original.ZIP));
>> }
>> else
>> {
>> ZIP = NULL;
>> }
>> causes
>> same_autogenerated_file.cpp:309: warning: NULL used in arithmetic
>> same_autogenerated_file.cpp:311: error: invalid type argument of
>> 'unary *'
>>
>> It looks correct, because class of ZIP is defined as "xsd__int".
>>
>> --
>> virtan / virtan@virtan.com / http://www.virtan.com
>>
>
--
virtan / virtan@virtan.com / http://www.virtan.com
AXISCPP: autogenerated class misinterprets type of its member
Posted by Nadir Amra <am...@us.ibm.com>.
Are you using the latest code base in SVN? If not, try that. The existing
binaries are buggy and very old. If you are, need WSDL to recreate
problem.
Nadir Amra
virtan <vi...@virtan.com> wrote on 01/02/2009 04:45:40 PM:
> [image removed]
>
> autogenerated class misinterprets type of its member
>
> virtan
>
> to:
>
> Apache AXIS C User List
>
> 01/02/2009 04:52 PM
>
> Please respond to "Apache AXIS C User List"
>
> (C++)
>
> Found 2 bugs with compiling autogenerated classes.
>
>
> 1. Function selection error
>
> During compile of autogenerated file I've got the following error:
> autogenerated_file.cpp:220: error: 'class
> axiscpp::IWrapperSoapDeSerializer' has no member named 'null'
> autogenerated_file.cpp:223: error: 'null' was not declared in this scope
>
> $ head -n 220 autogenerated_file.cpp | tail -n 1
> if ((ZIP = pIWSDZ->null( "ZIP",0)) != NULL)
> where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer,
> passed as arg in autogenerated function.
>
> It is right: there are no "null" method in IWrapperSoapDeSerializer:
>
> $ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp
> 0
>
>
> 2. Misinterpreting of field type (looks like it is a reason of 1.)
>
> The same autogenerated file, also ZIP.
> original is an instance of autogenerated class.
>
> Code
> if (original.ZIP != NULL)
> {
> ZIP = new autogenerated_class(*(original.ZIP));
> }
> else
> {
> ZIP = NULL;
> }
> causes
> same_autogenerated_file.cpp:309: warning: NULL used in arithmetic
> same_autogenerated_file.cpp:311: error: invalid type argument of
> 'unary *'
>
> It looks correct, because class of ZIP is defined as "xsd__int".
>
> --
> virtan / virtan@virtan.com / http://www.virtan.com
>