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 Fred Preston <PR...@uk.ibm.com> on 2004/06/07 17:39:12 UTC

WSDL2WS problems creating stubs from UDDI WSDL

Hi All,
        I'm trying to create stubs from a WSDL I obtained from the UDDI 
website (http://uddi.org/wsdl/inquire_v2.wsdl). WSDL2WS will not process 
the WSDL without error.  I can fix the errors, and the WSDL2WS will 
produce C++ stubs, but the stubs are not completely correct and have to be 
altered by hand.  Below are the areas where the code fails in WSDL2WS...

CUtils.java
        Minor changes, but did not record.

WSDL2WS.java
        Removed line 317 otherwise could not find all the names.

183:    private ArrayList getServiceInfo(PortType porttype)throws 
WrapperFault {
184:        //get operation list
   :
314:                            pinfo = new 
ParameterInfo(type,part.getName());
315: pinfo.setElementName(part.getElementName());
316:                            //remove the type that represents the 
wrapping element so that such type is not created.
317://                  this.typeMap.removeType(qname);
318:                            }
319:                    }

BeanParamWritter.java
        Added lines 125, 126, 127 128, 129 and 131 to allow these four 
names to generate code.  Otherwise an error occurs because these names are 
not of 'basic type'.  When the stubs have been generated, these four files 
need to be amended as shown later in the text.

122:    writer.write("\t/* first serialize attributes if any*/\n");
123:    for(int i = 0; i< attributeParamCount;i++){
124:            if(attribs[i].isArray() || !(attribs[i].isSimpleType())){
125:                    if( !("truncated".equals(attribs[i].getLangName()) 
||
126:                            "generic".equals(attribs[i].getLangName()) 
||
127:                            "keyType".equals(attribs[i].getLangName()) 
||
128:                            "direction"
.equals(attribs[i].getLangName())))
129:                    {
130:            throw new WrapperFault("Error : the attribute " + 
attribs[i].getLangName() + " is not basic type");
131:                    }
132:            }
133:    else{

ArrayParamWriter.java
        Added lines 49, 50 and 58 then 80, 81 and 83 so that 
NullPoinerException was not thrown when classname was null.

44:     public void writeSource()throws WrapperFault{
45:        try{
46:                     this.writer = new BufferedWriter(new 
FileWriter(getFilePath(), false));
47:                     writeClassComment();
48:                     // if this headerfile not defined define it
49:                     if(classname != null)
50:                     {
  :
58:                     }

80:     if( classname != null)
81:     {
82:     this.writer.write("#endif /* !defined(__"+
                                classname.toUpperCase()+"_"+
                                getFileType().toUpperCase()+
                                "_H__INCLUDED_)*/\n");
83:     }

The stubs produced are accurate except for truncated, generic, keyType and 
direction.  The following common code changes (shown in bold text) are 
required to each file before it will compile...

direction.cpp

/*
 *This file is automatically generated by the Axis C++ Wrapper Class 
Generator
 *Web service wrapper class's implementation generated by Axis WCG
 *Parameters and wrapper methods to manipulate direction
 */

#include <malloc.h>
#include <axis/server/AxisWrapperAPI.h>

#include "direction.h"

/*
 * This static method serialize a direction type of object
 */
int Axis_Serialize_direction(direction* param, IWrapperSoapSerializer* 
pSZ, bool bArray = false)
{
        printf("Warning - no code for Axis_Serialize_direction()");
/*
        if ( param == NULL ) {
         // TODO : may need to check nillable value
        pSZ->serializeAsAttribute("xsi:nil", 0, 
(void*)&(xsd_boolean_true), XSD_BOOLEAN);
         pSZ->serialize(">", NULL);
        return AXIS_SUCCESS;
        }
        // first serialize attributes if any
        if (0 != param->generic)
                pSZ->serializeAsAttribute("generic", 0, 
(void*)&(param->generic), XSD_STRING);
        pSZ->serialize(">", 0);
        // then serialize elements if any//
        pSZ->serializeAsElement("authInfo", (void*)&(param->authInfo), 
XSD_STRING);
 pSZ->serializeCmplxArray((Axis_Array*)(&param->publisherAssertion_Ref),
                (void*) Axis_Serialize_publisherAssertion, (void*) 
Axis_Delete_publisherAssertion, (void*) Axis_GetSize_publisherAssertion,
                "publisherAssertion", Axis_URI_publisherAssertion);
*/
        return AXIS_SUCCESS;
}

/*
 * This static method deserialize a direction type of object
 */
int Axis_DeSerialize_direction(direction* param, IWrapperSoapDeSerializer 
*pIWSDZ)
{
        printf("Warning - no code for Axis_DeSerialize_direction()");
/*
        Axis_Array array;
        param->generic = pIWSDZ->getAttributeAsString("generic",0);
        param->authInfo = pIWSDZ->getElementAsString("authInfo",0);
        array = 
pIWSDZ->getCmplxArray((void*)Axis_DeSerialize_publisherAssertion
                , (void*)Axis_Create_publisherAssertion, 
(void*)Axis_Delete_publisherAssertion
                , (void*)Axis_GetSize_publisherAssertion, 
"publisherAssertion", Axis_URI_publisherAssertion);
        param->publisherAssertion_Ref = (publisherAssertion_Array&)array;
*/
        return pIWSDZ->getStatus();
}

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

/*
 * This static method delete a direction type of object
 */
void Axis_Delete_direction(direction* param, bool bArray = false, int 
nSize=0)
{
        if (bArray)
        {
                delete [] param;
        }
        else
        {
                delete param;
        }
}

/*
 * This static method gives the size of direction type of object
 */
int Axis_GetSize_direction()
{
        return sizeof(direction);
}

int Check_Restrictions_direction(direction value)
{
        return 0;
}

direction.h
/*
 *This file is automatically generated by the Axis C++ Wrapper Class 
Generator
 *Web service wrapper class's implementation generated by Axis WCG
 *Parameters and wrapper methods to manipulate direction
 */

#if !defined(__DIRECTION_PARAM_H__INCLUDED_)
#define __DIRECTION_PARAM_H__INCLUDED_

class direction
{
};

static const char* Axis_URI_direction = "urn:uddi-org:api_v2";

#endif /* !defined(__DIRECTION_PARAM_H__INCLUDED_)*/


        Has anyone experienced these problems or know how to correctly 
parse the UDDI inquire_v2.wsdl?

Regards,

Fred Preston.
Software Engineer
Business Integration

Mail Point 188,  IBM Hursley Park
Winchester, Hampshire, SO21 2JN, UK 
Notes id:    Fred Preston/UK/IBM @ IBMGB
Internet:      prestonf@uk.ibm.com
Tel:             +44 1962 817180
Internal:      247180

RE: WSDL2WS problems creating stubs from UDDI WSDL

Posted by Susantha Kumara <su...@opensource.lk>.
Hi Fred,
 
It seems that you have customized wsdl2ws tool so that your particular
wsdl can be processed. Still the generated code is not compilable.
 
I ran wsdl2ws tool with the wsdl and will try to fix the problems ASAP. 
 
Thanks,
---
Susantha Kumara
Virtusa (pvt) Ltd.
Office : +94112714385
Mobile : +94777420453
 
-----Original Message-----
From: Fred Preston [mailto:PRESTONF@uk.ibm.com] 
Sent: Monday, June 07, 2004 9:39 PM
To: Apache AXIS C Developers List
Subject: WSDL2WS problems creating stubs from UDDI WSDL
 

Hi All, 
        I'm trying to create stubs from a WSDL I obtained from the UDDI
website (http://uddi.org/wsdl/inquire_v2.wsdl). WSDL2WS will not process
the WSDL without error.  I can fix the errors, and the WSDL2WS will
produce C++ stubs, but the stubs are not completely correct and have to
be altered by hand.  Below are the areas where the code fails in
WSDL2WS... 

CUtils.java 
        Minor changes, but did not record. 

WSDL2WS.java 
        Removed line 317 otherwise could not find all the names. 

183:    private ArrayList getServiceInfo(PortType porttype)throws
WrapperFault { 
184:        //get operation list 
   : 
314:                                pinfo = new
ParameterInfo(type,part.getName()); 
315:
pinfo.setElementName(part.getElementName()); 
316:                                //remove the type that represents
the wrapping element so that such type is not created. 
317://                        this.typeMap.removeType(qname); 
318:                                } 
319:                        } 

BeanParamWritter.java 
        Added lines 125, 126, 127 128, 129 and 131 to allow these four
names to generate code.  Otherwise an error occurs because these names
are not of 'basic type'.  When the stubs have been generated, these four
files need to be amended as shown later in the text. 

122:        writer.write("\t/* first serialize attributes if any*/\n"); 
123:        for(int i = 0; i< attributeParamCount;i++){ 
124:                if(attribs[i].isArray() ||
!(attribs[i].isSimpleType())){ 
125:                        if(
!("truncated".equals(attribs[i].getLangName()) || 
126:
"generic".equals(attribs[i].getLangName()) || 
127:
"keyType".equals(attribs[i].getLangName()) || 
128:
"direction".equals(attribs[i].getLangName()))) 
129:                        { 


This is basically a customization of WSDL2Ws tool. This is not the
proper way to handle the errors.
 
130:                throw new WrapperFault("Error : the attribute " +
attribs[i].getLangName() + " is not basic type"); 
131:                        } 
132:                } 
133:        else{ 

ArrayParamWriter.java 
        Added lines 49, 50 and 58 then 80, 81 and 83 so that
NullPoinerException was not thrown when classname was null. 

44:        public void writeSource()throws WrapperFault{ 
45:           try{ 
46:                        this.writer = new BufferedWriter(new
FileWriter(getFilePath(), false)); 
47:                        writeClassComment(); 
48:                        // if this headerfile not defined define it 
49:                        if(classname != null) 
50:                        { 
  : 
58:                        } 

80:        if( classname != null) 
81:        { 
82:        this.writer.write("#endif /* !defined(__"+ 
                                classname.toUpperCase()+"_"+ 
                                getFileType().toUpperCase()+ 
                                "_H__INCLUDED_)*/\n"); 
83:        } 

The stubs produced are accurate except for truncated, generic, keyType
and direction.  The following common code changes (shown in bold text)
are required to each file before it will compile... 
 
This is because your hack to the WSDL2Ws code do not generate all
required source code.


direction.cpp 

/* 
 *This file is automatically generated by the Axis C++ Wrapper Class
Generator 
 *Web service wrapper class's implementation generated by Axis WCG 
 *Parameters and wrapper methods to manipulate direction 
 */ 

#include <malloc.h> 
#include <axis/server/AxisWrapperAPI.h> 

#include "direction.h" 

/* 
 * This static method serialize a direction type of object 
 */ 
int Axis_Serialize_direction(direction* param, IWrapperSoapSerializer*
pSZ, bool bArray = false) 
{ 
        printf("Warning - no code for Axis_Serialize_direction()"); 
/* 
        if ( param == NULL ) { 
         // TODO : may need to check nillable value 
        pSZ->serializeAsAttribute("xsi:nil", 0,
(void*)&(xsd_boolean_true), XSD_BOOLEAN); 
         pSZ->serialize(">", NULL); 
        return AXIS_SUCCESS; 
        } 
        // first serialize attributes if any 
        if (0 != param->generic) 
                pSZ->serializeAsAttribute("generic", 0,
(void*)&(param->generic), XSD_STRING); 
        pSZ->serialize(">", 0); 
        // then serialize elements if any// 
        pSZ->serializeAsElement("authInfo", (void*)&(param->authInfo),
XSD_STRING); 
 
pSZ->serializeCmplxArray((Axis_Array*)(&param->publisherAssertion_Ref), 
                (void*) Axis_Serialize_publisherAssertion, (void*)
Axis_Delete_publisherAssertion, (void*) Axis_GetSize_publisherAssertion,

                "publisherAssertion", Axis_URI_publisherAssertion); 
*/ 
        return AXIS_SUCCESS; 
} 

/* 
 * This static method deserialize a direction type of object 
 */ 
int Axis_DeSerialize_direction(direction* param,
IWrapperSoapDeSerializer *pIWSDZ) 
{ 
        printf("Warning - no code for Axis_DeSerialize_direction()"); 
/* 
        Axis_Array array; 
        param->generic = pIWSDZ->getAttributeAsString("generic",0); 
        param->authInfo = pIWSDZ->getElementAsString("authInfo",0); 
        array =
pIWSDZ->getCmplxArray((void*)Axis_DeSerialize_publisherAssertion 
                , (void*)Axis_Create_publisherAssertion,
(void*)Axis_Delete_publisherAssertion 
                , (void*)Axis_GetSize_publisherAssertion,
"publisherAssertion", Axis_URI_publisherAssertion); 
        param->publisherAssertion_Ref =
(publisherAssertion_Array&)array; 
*/ 
        return pIWSDZ->getStatus(); 
} 

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

/* 
 * This static method delete a direction type of object 
 */ 
void Axis_Delete_direction(direction* param, bool bArray = false, int
nSize=0) 
{ 
        if (bArray) 
        { 
                delete [] param; 
        } 
        else 
        { 
                delete param; 
        } 
} 

/* 
 * This static method gives the size of direction type of object 
 */ 
int Axis_GetSize_direction() 
{ 
        return sizeof(direction); 
} 

int Check_Restrictions_direction(direction value) 
{ 
        return 0; 
} 

direction.h 
/* 
 *This file is automatically generated by the Axis C++ Wrapper Class
Generator 
 *Web service wrapper class's implementation generated by Axis WCG 
 *Parameters and wrapper methods to manipulate direction 
 */ 

#if !defined(__DIRECTION_PARAM_H__INCLUDED_) 
#define __DIRECTION_PARAM_H__INCLUDED_ 

class direction 
{ 
}; 

static const char* Axis_URI_direction = "urn:uddi-org:api_v2"; 

#endif /* !defined(__DIRECTION_PARAM_H__INCLUDED_)*/ 


        Has anyone experienced these problems or know how to correctly
parse the UDDI inquire_v2.wsdl? 

Regards,

Fred Preston.
Software Engineer
Business Integration

Mail Point 188,  IBM Hursley Park
Winchester, Hampshire, SO21 2JN, UK   
Notes id:    Fred Preston/UK/IBM @ IBMGB
Internet:      prestonf@uk.ibm.com
Tel:             +44 1962 817180
Internal:      247180

Latest cvs build failed

Posted by Samisa Abeysinghe <sa...@yahoo.com>.
Build errors/warnings of build @ Tue Jun 8 09:05:05 LKT 2004
make: *** No rule to make target `distclean'.  Stop.
configure.ac: installing `./mkinstalldirs'
configure.ac: installing `./missing'
Makefile.am: installing `./INSTALL'
Makefile.am: required file `./NEWS' not found
Makefile.am: required file `./README' not found
Makefile.am: installing `./COPYING'
Makefile.am: required file `./AUTHORS' not found
Makefile.am: required file `./ChangeLog' not found
libtool: install: warning: relinking `libaxis_expat.la'
libtool: install: warning: relinking `libaxiscpp_mod2.la'
make: *** No rule to make target `distclean'.  Stop.
Makefile.am: installing `./INSTALL'
Makefile.am: required file `./NEWS' not found
Makefile.am: required file `./README' not found
Makefile.am: installing `./COPYING'
Makefile.am: required file `./AUTHORS' not found
Makefile.am: required file `./ChangeLog' not found
In file included from
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:26,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IMessageData.h:33,
                 from InteropTestPortTypeWrapper.h:8,
                 from InteropTestPortTypeService.c:10:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/SOAPTransport.h:108:8: warning: extra tokens at end
of #endif directive
In file included from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IMessageData.h:33,
                 from InteropTestPortTypeWrapper.h:8,
                 from InteropTestPortTypeService.c:10:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:146: parse error
before "AnyType"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:146: warning: no
semicolon at end of struct
 or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:147: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializerFunctions'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:147: ISO C
forbids data definition with no
type or storage class
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:151: parse error
before "IWrapperSoapDeSeri
alizerFunctions"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:151: warning: no
semicolon at end of struct
 or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:153: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializer_C'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:153: ISO C
forbids data definition with no
type or storage class
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: parse error
before "IWrapperSoapDeSeri
alizer"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializer'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: ISO C
forbids data definition with no
type or storage class
In file included from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IMessageData.h:34,
                 from InteropTestPortTypeWrapper.h:8,
                 from InteropTestPortTypeService.c:10:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapSerializer.h:89: parse error
before "AnyType"
In file included from InteropTestPortTypeWrapper.h:8,
                 from InteropTestPortTypeService.c:10:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IMessageData.h:42: parse error before
"IWrapperSoapDeSerializer_C"
In file included from InteropTestPortTypeService.c:10:
InteropTestPortTypeWrapper.h:19: parse error before "DZ"
InteropTestPortTypeWrapper.h:20: parse error before "DZ"
InteropTestPortTypeWrapper.h:21: parse error before "DZ"
InteropTestPortTypeWrapper.h:22: parse error before "DZ"
InteropTestPortTypeWrapper.h:23: parse error before "DZ"
InteropTestPortTypeWrapper.h:24: parse error before "DZ"
InteropTestPortTypeWrapper.h:25: parse error before "DZ"
InteropTestPortTypeWrapper.h:26: parse error before "DZ"
InteropTestPortTypeWrapper.h:27: parse error before "DZ"
InteropTestPortTypeWrapper.h:28: parse error before "DZ"
InteropTestPortTypeWrapper.h:29: parse error before "DZ"
InteropTestPortTypeWrapper.h:30: parse error before "DZ"
InteropTestPortTypeWrapper.h:31: parse error before "DZ"
InteropTestPortTypeWrapper.h:32: parse error before "DZ"
In file included from InteropTestPortTypeService.c:10:
InteropTestPortTypeWrapper.h:35:8: warning: extra tokens at end of #endif directive
make[3]: *** [InteropTestPortTypeService.lo] Error 1
make[2]: *** [install-recursive] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install-recursive] Error 1
make: *** No rule to make target `distclean'.  Stop.
Makefile.am: installing `./INSTALL'
Makefile.am: required file `./NEWS' not found
Makefile.am: required file `./README' not found
Makefile.am: installing `./COPYING'
Makefile.am: required file `./AUTHORS' not found
Makefile.am: required file `./ChangeLog' not found
In file included from
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:26,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/AxisWrapperAPI.h:28,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:46,
                 from InteropTestPortType.h:9,
                 from InteropBaseClient.c:4:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/SOAPTransport.h:108:8: warning: extra tokens at end
of #endif directive
In file included from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/AxisWrapperAPI.h:28,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:46,
                 from InteropTestPortType.h:9,
                 from InteropBaseClient.c:4:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:146: parse error
before "AnyType"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:146: warning: no
semicolon at end of struct
 or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:147: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializerFunctions'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:147: ISO C
forbids data definition with no
type or storage class
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:151: parse error
before "IWrapperSoapDeSeri
alizerFunctions"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:151: warning: no
semicolon at end of struct
 or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:153: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializer_C'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:153: ISO C
forbids data definition with no
type or storage class
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: parse error
before "IWrapperSoapDeSeri
alizer"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: warning:
type defaults to `int' in dec
laration of `IWrapperSoapDeSerializer'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapDeSerializer.h:156: ISO C
forbids data definition with no
type or storage class
In file included from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/AxisWrapperAPI.h:29,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:46,
                 from InteropTestPortType.h:9,
                 from InteropBaseClient.c:4:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IWrapperSoapSerializer.h:89: parse error
before "AnyType"
In file included from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/BasicHandler.h:23,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/server/AxisWrapperAPI.h:30,
                 from /home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:46,
                 from InteropTestPortType.h:9,
                 from InteropBaseClient.c:4:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/server/IMessageData.h:42: parse error before
"IWrapperSoapDeSerializer_C"
In file included from InteropTestPortType.h:9,
                 from InteropBaseClient.c:4:
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:212: parse error before "AnyType"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:212: warning: no semicolon at end of
struct or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:213: parse error before "AnyType"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:215: warning: type defaults to `int'
in declaration of `CallFun
ctions'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:215: ISO C forbids data definition
with no type or storage clas
s
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:869: parse error before
"CallFunctions"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:869: warning: no semicolon at end of
struct or union
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:870: warning: type defaults to `int'
in declaration of `Call_C'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:870: ISO C forbids data definition
with no type or storage clas
s
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:883: parse error before "Call"
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:883: warning: type defaults to `int'
in declaration of `Call'
/home/samisa/autoCVS/cvsAutoBuild/include/axis/client/Call.h:883: ISO C forbids data definition
with no type or storage clas
s
In file included from InteropBaseClient.c:4:
InteropTestPortType.h:32:8: warning: extra tokens at end of #endif directive
InteropBaseClient.c: In function `main':
InteropBaseClient.c:51: warning: implicit declaration of function `strdup'
InteropBaseClient.c:51: warning: assignment makes pointer from integer without a cast
InteropBaseClient.c:98: warning: assignment makes pointer from integer without a cast
InteropBaseClient.c:14: warning: unused variable `buffer2'
InteropBaseClient.c: At top level:
SOAPStruct.h:13: warning: `Axis_URI_SOAPStruct' defined but not used
SOAPStruct.h:14: warning: `Axis_TypeName_SOAPStruct' defined but not used
make[3]: *** [InteropBaseClient.o] Error 1
make[2]: *** [install-recursive] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install-recursive] Error 1



	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/