Hi,

I'm new With Axis C++ (I've experience on Axis for
Java). I've written a Java server and I need to
generate a client in C++.
I've downloaded Axis C++ 1.5 final; I've tried to
generate my client from an existing service (WSDL).
Here are some warning messages during client creation:

[START]
19-apr-2005 8.33.41 org.apache.axis.utils.JavaUtils
isAttachmentSupported
AVVERTENZA: Unable to find required classes
(javax.activation.DataHandler and
javax.mail.internet.MimeMultipart). Attachment support
is disabled.
Possible error in class nonNegativeInteger: class with
no attributes....................
Possible error in class nonNegativeInteger: class with
no attributes....................

Code generation completed.
[FINISH]

Is there something wrong? The class generate for
nonNegativeInteger is:


#include <axis/AxisWrapperAPI.hpp>

#include "nonNegativeInteger.hpp"
/*
 * This static method serialize a nonNegativeInteger
type of object
 */
int
Axis_Serialize_nonNegativeInteger(nonNegativeInteger*
param, IWrapperSoapSerializer* pSZ, bool bArray =
false)
{
        pSZ->serialize(">", NULL);
        return AXIS_SUCCESS;
}

/*
 * This static method deserialize a nonNegativeInteger
type of object
 */
int
Axis_DeSerialize_nonNegativeInteger(nonNegativeInteger*
param, IWrapperSoapDeSerializer* pIWSDZ)
{
        return AXIS_SUCCESS;
}

void*
Axis_Create_nonNegativeInteger(nonNegativeInteger*
pObj, bool bArray = false, int nSize=0)
{
        if (bArray && (nSize > 0))
        {
                if (pObj)
                {
                        nonNegativeInteger* pNew = new
nonNegativeInteger[nSize];
                        memcpy(pNew, pObj,
sizeof(nonNegativeInteger)*nSize/2);
                        memset(pObj, 0,
sizeof(nonNegativeInteger)*nSize/2);
                        delete [] pObj;
                        return pNew;
                }
                else
                {
                        return new nonNegativeInteger[nSize];
                }
        }
        else
                return new nonNegativeInteger;
}

/*
 * This static method delete a nonNegativeInteger type
of object
 */
void
Axis_Delete_nonNegativeInteger(nonNegativeInteger*
param, bool bArray = false, int nSize=0)
{
        if (bArray)
        {
                delete [] param;
        }
        else
        {
                delete param;
        }
}
/*
 * This static method gives the size of
nonNegativeInteger type of object
 */
int Axis_GetSize_nonNegativeInteger()
{
        return sizeof(nonNegativeInteger);
}

nonNegativeInteger::nonNegativeInteger()
{
        /*do not allocate memory to any pointer members here
         because deserializer will allocate memory anyway. */
}

nonNegativeInteger::~nonNegativeInteger()
{
        /*delete any pointer and array members here*/
}


I need also a suggestion in how to achieve these steps
in Visual Studio C++ (from winuser-guide.html):
 4) Set the include path to the include directory of
the binary distribution. 
 5) Add the following libs to the library modules path
of this project. 

  Axis_Extract/lib/axis/ 
  Axisclient.lib 

 
Thanks

-- Ivan


                
___________________________________ 
Nuovo Yahoo! Messenger: E' molto pi� divertente: Audibles, Avatar, Webcam, 
Giochi, Rubrica� Scaricalo ora! 
http://it.messenger.yahoo.it

Reply via email to