You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by na...@apache.org on 2006/04/07 04:23:50 UTC
svn commit: r392161 - in /webservices/axis/trunk/c: include/axis/
src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/
tests/auto_build/testcases/client/c/ tests/auto_build/testcases/client/cpp/
Author: nadiramra
Date: Thu Apr 6 19:23:48 2006
New Revision: 392161
URL: http://svn.apache.org/viewcvs?rev=392161&view=rev
Log:
C support fixes/enhancements.
Modified:
webservices/axis/trunk/c/include/axis/AxisUserAPI.h
webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.hpp
webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java
webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/BeanParamWriter.java
webservices/axis/trunk/c/tests/auto_build/testcases/client/c/AxisBenchClient.c
webservices/axis/trunk/c/tests/auto_build/testcases/client/c/SimpleTypeArrayClient.c
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/AxisBenchClient.cpp
Modified: webservices/axis/trunk/c/include/axis/AxisUserAPI.h
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/include/axis/AxisUserAPI.h?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/include/axis/AxisUserAPI.h (original)
+++ webservices/axis/trunk/c/include/axis/AxisUserAPI.h Thu Apr 6 19:23:48 2006
@@ -324,14 +324,10 @@
*/
typedef struct
{
- /**
- * Binary data
- */
+ /** Binary data */
xsdc__unsignedByte * __ptr;
- /**
- * Length, in bytes, of binary data
- */
+ /** Length, in bytes, of binary data */
xsdc__int __size;
} xsdc__base64Binary;
@@ -341,16 +337,13 @@
*/
typedef struct
{
- /**
- * Binary data
- */
+ /** Binary data */
xsdc__unsignedByte * __ptr;
- /**
- * Length, in bytes, of binary data
- */
+ /** Length, in bytes, of binary data */
xsdc__int __size;
} xsdc__hexBinary;
+
/**
* @typedef xsdc__anyURI
* Axis C++ defined type for xml basic type anyURI
@@ -390,7 +383,7 @@
} type##_Array;
typedef struct {
- void* m_Array;
+ void** m_Array;
int m_Size;
AXISC_XSDTYPE m_Type; \
} Axisc_Array;
Modified: webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.hpp
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.hpp?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.hpp (original)
+++ webservices/axis/trunk/c/include/axis/IWrapperSoapSerializer.hpp Thu Apr 6 19:23:48 2006
@@ -35,17 +35,6 @@
*
*/
-/*
- * Revision 1.1 2005/01/02 Roshan
- * Added addAttachmentBody
- * Added addAttachmentHeader
- */
-
-/*
- * Revision 1.2 2005/01/07 Roshan
- * Added addAttachment
- */
-
AXIS_CPP_NAMESPACE_START
class IWrapperSoapSerializer
@@ -54,18 +43,19 @@
virtual ~IWrapperSoapSerializer(){};
virtual int AXISCALL createSoapMethod(const AxisChar* sLocalName,
- const AxisChar* sURI)=0;
+ const AxisChar* sURI)=0;
virtual int AXISCALL createSoapFault(const AxisChar* sLocalName,
- const AxisChar* sURI, const AxisChar* sFaultCode,
- const AxisChar* sFaultString)=0;
+ const AxisChar* sURI,
+ const AxisChar* sFaultCode,
+ const AxisChar* sFaultString)=0;
/**
* Returns the corrosponding namespace prefix.
* @param pNamespace The namespace.
* @return The corrosponding prefix.
*/
- virtual const AxisChar* AXISCALL getNamespacePrefix
- (const AxisChar* pNamespace)=0;
+ virtual const AxisChar* AXISCALL getNamespacePrefix(const AxisChar* pNamespace)=0;
+
/**
* Returns the corrosponding namespace prefix. This method is
* called when the caller also wants to know whether this is a new
@@ -76,51 +66,74 @@
* @return The corrosponding prefix.
*/
virtual const AxisChar* AXISCALL getNamespacePrefix(const AxisChar* pNamespace,
- bool& blnIsNewPrefix)=0;
-
+ bool& blnIsNewPrefix)=0;
+
virtual void AXISCALL removeNamespacePrefix(const AxisChar* pNamespace)=0;
/* for basic types */
- virtual int AXISCALL addOutputParam(const AxisChar* pchName, void* pValue,
- XSDTYPE type)=0;
+ virtual int AXISCALL addOutputParam(const AxisChar* pchName,
+ void* pValue,
+ XSDTYPE type)=0;
/* for arrays */
virtual int AXISCALL addOutputCmplxArrayParam(const Axis_Array* pArray,
- void* pSZFunct, void* pDelFunct, void* pSizeFunct,
- const AxisChar* pName, const AxisChar* pNamespace)=0;
+ void* pSZFunct,
+ void* pDelFunct,
+ void* pSizeFunct,
+ const AxisChar* pName,
+ const AxisChar* pNamespace)=0;
virtual int AXISCALL addOutputBasicArrayParam(const Axis_Array* pArray,
- XSDTYPE nType, const AxisChar* pName)=0;
+ XSDTYPE nType,
+ const AxisChar* pName)=0;
/* for complex types */
- virtual int AXISCALL addOutputCmplxParam(void* pObject, void* pSZFunct,
- void* pDelFunct, const AxisChar* pName, const AxisChar* pNamespace) = 0;
-
- virtual int AXISCALL addFaultDetail(void* pObject, void* pSZFunct,
- void* pDelFunct, const AxisChar* pName, const AxisChar* pNamespace) = 0;
+ virtual int AXISCALL addOutputCmplxParam(void* pObject,
+ void* pSZFunct,
+ void* pDelFunct,
+ const AxisChar* pName,
+ const AxisChar* pNamespace) = 0;
+
+ virtual int AXISCALL addFaultDetail(void* pObject,
+ void* pSZFunct,
+ void* pDelFunct,
+ const AxisChar* pName,
+ const AxisChar* pNamespace) = 0;
/* Methods used to serialize arrays */
- virtual int AXISCALL serializeCmplxArray(const Axis_Array* pArray,
- void* pSZFunct, void* pDelFunct, void* pSizeFunct,
- const AxisChar* pName, const AxisChar* pNamespace)=0;
-
- virtual int AXISCALL serializeBasicArray
- (const Axis_Array* pArray, XSDTYPE nType, const AxisChar* pName)=0;
-
- virtual int AXISCALL serializeBasicArray
- (const Axis_Array* pArray, const AxisChar* pNamespace, XSDTYPE nType, const AxisChar* pName)=0;
+ virtual int AXISCALL serializeCmplxArray(const Axis_Array* pArray,
+ void* pSZFunct,
+ void* pDelFunct,
+ void* pSizeFunct,
+ const AxisChar* pName,
+ const AxisChar* pNamespace)=0;
+
+ virtual int AXISCALL serializeBasicArray(const Axis_Array* pArray,
+ XSDTYPE nType,
+ const AxisChar* pName)=0;
+
+ virtual int AXISCALL serializeBasicArray(const Axis_Array* pArray,
+ const AxisChar* pNamespace,
+ XSDTYPE nType,
+ const AxisChar* pName)=0;
/* Basic Type Serializing methods */
- virtual int AXISCALL serializeAsElement(const AxisChar* sName,
- void* pValue, XSDTYPE type)=0;
+ virtual int AXISCALL serializeAsElement(const AxisChar* sName,
+ void* pValue,
+ XSDTYPE type)=0;
- virtual int AXISCALL serializeAsElement(const AxisChar* sName, const AxisChar* pNamespace,
- void* pValue, XSDTYPE type)=0;
-
- virtual int AXISCALL serializeAsAttribute(const AxisChar* sName,
- const AxisChar* pNamespace, void* pValue, XSDTYPE type)=0;
+ virtual int AXISCALL serializeAsElement(const AxisChar* sName,
+ const AxisChar* pNamespace,
+ void* pValue,
+ XSDTYPE type)=0;
+
+ virtual int AXISCALL serializeAsAttribute(const AxisChar* sName,
+ const AxisChar* pNamespace,
+ void* pValue,
+ XSDTYPE type)=0;
virtual void AXISCALL serializeVargs(int count, const char** args)=0;
+
virtual void AXISCALL serialize(const char* pFirst, ...)=0;
/*
@@ -128,26 +141,11 @@
* functions of complex types for RPC style web services
*/
virtual void AXISCALL serializeStartElementOfType(const AxisChar* pName,
- const AxisChar* pNamespace, const AxisChar* pPrefix)=0;
+ const AxisChar* pNamespace,
+ const AxisChar* pPrefix)=0;
virtual void AXISCALL serializeEndElementOfType(const AxisChar* pName)=0;
- /* Externalization of serializer API */
-
- /* Following functions need not be exposed. They are internal to the
- * Axis Engine - Commented by Susantha 02/07/2004
-
- virtual int setOutputStream(SOAPTransport* pStream)=0;
-
- virtual void markEndOfStream()=0;
-
- virtual int init()=0;
-
- virtual void setStyle(AXIS_BINDING_STYLE nStyle)=0;
-
- virtual AXIS_BINDING_STYLE getStyle()=0;
- */
-
virtual PROVIDERTYPE getCurrentProviderType()=0;
virtual void setCurrentProviderType(PROVIDERTYPE nType)=0;
@@ -156,30 +154,35 @@
virtual int serializeAnyObject(AnyType* pAnyObject)=0;
- virtual int serializeAsChardata(void* pValue, XSDTYPE type)=0;
+ virtual int serializeAsChardata(void* pValue,
+ XSDTYPE type)=0;
+
+ virtual void addAttachment(const AxisChar* achId,
+ ISoapAttachment* objAttach)=0;
- virtual void addAttachment(const AxisChar* achId, ISoapAttachment* objAttach)=0;
+ virtual void addAttachments(ISoapAttachment** pAttach,
+ int iAttchArraySize)=0;
- virtual void addAttachments(ISoapAttachment** pAttach, int iAttchArraySize)=0;
+ virtual void addAttachmentBody(const AxisChar* achId,
+ xsd__base64Binary* pAttchBody)=0;
- virtual void addAttachmentBody(const AxisChar* achId, xsd__base64Binary* pAttchBody)=0;
+ virtual void addAttachmentHeader(const AxisChar* achId,
+ const AxisChar* achHeaderName,
+ const AxisChar* achHeaderValue)=0;
- virtual void addAttachmentHeader(const AxisChar* achId, const AxisChar* achHeaderName, const AxisChar* achHeaderValue)=0;
-
- /**
- * creates and returns a SoapAttachment object to the caller of this methods.
- * The user can use this object and fill in the attachment details. This
- * method doesn't add the created SoapAttachment object to the Serializer.
- * The user will have to add this object explictly by calling the addAttachment
- * method of the IWrapperSoapSerializer interface
- *
- */
- virtual ISoapAttachment* createSoapAttachment()=0;
-
- /**
- * This methos will clear up all the current out params in preperation of a
- * new method call
- */
+ /**
+ * creates and returns a SoapAttachment object to the caller of this methods.
+ * The user can use this object and fill in the attachment details. This
+ * method doesn't add the created SoapAttachment object to the Serializer.
+ * The user will have to add this object explictly by calling the addAttachment
+ * method of the IWrapperSoapSerializer interface
+ */
+ virtual ISoapAttachment* createSoapAttachment()=0;
+
+ /**
+ * This method will clear up all the current out params in preparation of a
+ * new method call
+ */
virtual void reset() = 0;
};
Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java Thu Apr 6 19:23:48 2006
@@ -154,7 +154,7 @@
* </xsd:complexType>
*/
writer.write("\tstruct " + attribs[0].getTypeName()
- + "Tag * m_Array;\n\tint m_Size;\n\tAXISC_XSD_TYPE m_Type;\n} "
+ + "Tag ** m_Array;\n\tint m_Size;\n\tAXISC_XSDTYPE m_Type;\n} "
+ classname + ";\n\n");
}
catch (IOException e)
Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/BeanParamWriter.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/BeanParamWriter.java?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/BeanParamWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/BeanParamWriter.java Thu Apr 6 19:23:48 2006
@@ -294,7 +294,7 @@
else
namespace = "NULL";
- writer.write("\taxiscSerializeCmplxArray(pSZ, param->"
+ writer.write("\taxiscSerializeCmplxArray(pSZ, (const Axisc_Array *)param->"
+ attribs[i].getParamNameAsMember() + ",\n");
writer.write("\t\t\t\t\t\t (void*) Axis_Serialize_" + arrayType + ",\n");
writer.write("\t\t\t\t\t\t (void*) Axis_Delete_" + arrayType + ",\n");
Modified: webservices/axis/trunk/c/tests/auto_build/testcases/client/c/AxisBenchClient.c
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/c/AxisBenchClient.c?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/c/AxisBenchClient.c (original)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/c/AxisBenchClient.c Thu Apr 6 19:23:48 2006
@@ -17,107 +17,191 @@
#include <stdio.h>
#include <time.h>
-#include <axis/Axis.h>
#include "CommonClientTestCode.h"
#include "AxisBench.h"
+#define WSDL_DEFAULT_ENDPOINT "http://localhost:9080/AxisBench/services/AxisBenchSoapImpl"
+
int main(int argc, char* argv[])
{
- BenchDataType *input;
- BenchDataType *output;
- BenchBasicDataType *pTemp;
- time_t tim;
- int i;
- void * pStub;
- xsdc__unsignedByte* buffer;
- char *uri = "http://localhost:9080/AxisBench/services/AxisBenchSoapImpl";
+ AXISCHANDLE ws = NULL;
+
+ BenchDataType * input = NULL;
+ BenchDataType * output = NULL;
+ xsdc__unsignedByte* buffer = NULL;
+
+ char * endpoint = WSDL_DEFAULT_ENDPOINT;
+ int returnValue = 1; /* Assume Failure */
+
+ int i;
+
+ BenchBasicDataType_Array arrayIn;
+ BenchBasicDataType ** ppBBDT;
+
+ xsdc__long ll;
+ time_t tim;
+ struct tm * temp;
+ struct tm lt;
+
+ char * letterA_String;
+
+ int request = 1;
+
- axiscRegisterExceptionHandler(exceptionHandler);
+ axiscRegisterExceptionHandler(exceptionHandler);
- if (argc>1)
- uri = argv[1];
+ if (argc>2 && strcmp(argv[1], "-e") == 0)
+ endpoint = argv[2];
- pStub = get_AxisBench_stub (uri);
+ ws = get_AxisBench_stub (endpoint);
+
+ /* extend transport timeout value to 60 secs */
+ axiscSetTransportTimeout(ws, 60);
- input = Axis_Create_BenchDataType(0,0,0);
+ ppBBDT = (BenchBasicDataType **)malloc(sizeof(BenchBasicDataType *) * 100);
- input->count = 100;
- input->infos.m_Array = Axis_Create_BenchBasicDataType(NULL,1,input->count);
- input->infos.m_Size = input->count;
-
- tim = 1079010407;
- gmtime(&tim);
-
- pTemp = input->infos.m_Array;
-
- buffer = (xsdc__unsignedByte*)malloc ( input->count + 2 );
- memset (buffer,0,input->count + 2);
-
- for ( i = 0; i < input->count ; i++ )
- {
- BenchBasicDataType *type = Axis_Create_BenchBasicDataType(0,0,0);
- type->StringType = c_strdup("StringType");
- type->IntegerType = i;
- type->DoubleType = 1;/*i/10;*/
- type->BooleanType = true_;
- type->DateTimeType = *gmtime(&tim);
- type->DateType = *gmtime(&tim);
- type->TimeType = *gmtime(&tim);
-
- type->IntType = i;
- type->ByteType = '1';
- type->DecimalType = 10;
- type->FloatType = i/2;
- type->LongType = i*100;
- type->QNameType = c_strdup("toto");
- type->ShortType = 1;
-
- type->Base64BinaryType.__size=i;
- type->Base64BinaryType.__ptr=buffer;
- type->HexBinary.__size=i;
- type->HexBinary.__ptr=buffer;
- strcat ( (char *)buffer, "A");
-
- pTemp[i] = *type;
- }
-
- output = doBenchRequest(pStub,input);
-
- if (exceptionOccurred == C_TRUE ||
- get_AxisBench_Status(pStub) == AXISC_FAIL )
- printf ("Failed\n");
- else
- {
- BenchBasicDataType *pTemp;
- pTemp = output->infos.m_Array;
- printf ("Count : %d \n", output->count);
- for ( i = 0; i < output->count ; i++ )
- {
- printf (" ----------------------------------------------\n");
- printf (" StringType %s \n", pTemp[i].StringType);
- printf (" IntegerType %d \n", pTemp[i].IntegerType);
- printf (" DoubleType %f \n", pTemp[i].DoubleType);
- printf (" BooleanType %d \n", pTemp[i].BooleanType);
- printf (" DateTimeType %s \n", asctime(&pTemp[i].DateTimeType));
- printf (" DateType %s \n", asctime(&pTemp[i].DateType));
- printf (" TimeType %s \n", asctime(&pTemp[i].TimeType));
- printf (" ByteType %d \n", pTemp[i].ByteType);
- printf (" DecimalType %f \n", pTemp[i].DecimalType);
- printf (" FloatType %f \n", pTemp[i].FloatType);
- printf (" LongType %ld \n", pTemp[i].LongType);
- printf (" QNameType %s \n", pTemp[i].QNameType);
- printf (" ShortType %d \n", pTemp[i].ShortType);
-
- printf (" Base64BinaryType %d \n", output->infos.m_Array[i].Base64BinaryType.__size);
- printf (" Base64BinaryType %s \n", output->infos.m_Array[i].Base64BinaryType.__ptr);
-
- printf (" HexBinaryType %d \n", output->infos.m_Array[i].HexBinary.__size);
- printf (" HexBinaryType %s \n", output->infos.m_Array[i].HexBinary.__ptr);
- }
- }
-
- Axis_Delete_BenchDataType (input,0,0);
- Axis_Delete_BenchDataType (output,0,0);
+ input = Axis_Create_BenchDataType(0,0,0);
+ input->count = 100;
+
+ ll = 10000;
+ tim = 1100246323;
+ temp = gmtime( &tim);
+
+ memcpy( <, temp, sizeof( struct tm));
+
+ letterA_String = stringToAscii( "A");
+ buffer = (xsdc__unsignedByte *) calloc( 1, input->count + 2);
+ strcpy( (char *) buffer, letterA_String);
+
+ for( i = 0; i < input->count ; i++)
+ {
+ BenchBasicDataType *type = Axis_Create_BenchBasicDataType(0,0,0);
+
+ type->StringType = "StringType";
+ type->IntegerType = 10 * (i + 1);
+ type->DoubleType = 11.111 * (i + 1);
+ type->BooleanType = true_;
+ type->DateTimeType = lt;
+ type->TimeType = lt;
+ type->DateType = lt;
+ type->IntType = (i + 1);
+ type->ByteType = '1';
+ type->DecimalType = 10 * (i + 1);
+ type->FloatType = (float) ((float) (11 * (i + 1)) / (float) 2.0);
+ type->LongType = ll;
+ type->QNameType = "toto";
+ type->ShortType = (i + 1);
+ type->Base64BinaryType.__size=i;
+ type->Base64BinaryType.__ptr=buffer;
+ type->HexBinary.__size=i;
+ type->HexBinary.__ptr=buffer;
+
+ ppBBDT[i] = type;
+
+ if( ll == 0)
+ ll = 1;
+ else
+ ll += 10000;
+
+ strcat ( (char *) buffer, letterA_String);
+ }
+
+ arrayIn.m_Array = ppBBDT;
+ arrayIn.m_Size = input->count;
+
+ input->infos = &arrayIn;
+
+ for(i = 0; i < request; i++)
+ {
+ if (output)
+ {
+ int j;
+ BenchBasicDataType ** outArray = output->infos->m_Array;
+ for( j = 0; j < output->infos->m_Size; j++)
+ {
+ Axis_Delete_BenchBasicDataType(outArray[j], 0, 0);
+
+ /* Who deletes output->infos?? */
+ }
+
+ Axis_Delete_BenchDataType(output,0,0);
+ output = NULL;
+ }
+
+ output = doBenchRequest(ws, input);
+ }
+
+ for( i = 0; i < input->count; i++)
+ {
+ Axis_Delete_BenchBasicDataType(ppBBDT[i],0,0);
+ }
+
+ if (ppBBDT)
+ free(ppBBDT);
+ if (buffer)
+ free( buffer);
+
+ output = doBenchRequest(ws,input);
+
+ if (exceptionOccurred == C_TRUE
+ || output == NULL
+ || get_AxisBench_Status(ws) == AXISC_FAIL )
+ printf ("Failed\n");
+ else
+ {
+ char dateTime[50];
+ BenchBasicDataType ** outArray = output->infos->m_Array;
+
+ if( argc > 1)
+ i = output->count - 1;
+
+ printf("Input Count : %d\n", input->count);
+ printf("Count : %d\n", output->count);
+
+ for ( i = 0; i < output->count ; i++ )
+ {
+ if( outArray[i] != NULL)
+ {
+ printf( " ----------------------------------------------" );
+ printf( " StringType %s\n", outArray[i]->StringType );
+ printf( " IntType %d\n", outArray[i]->IntType );
+ printf( " IntegerType %d\n", outArray[i]->IntegerType );
+ printf( " DoubleType %f\n", outArray[i]->DoubleType );
+ printf( " BooleanType %d\n", outArray[i]->BooleanType );
+ strftime(dateTime, 50, "%a %b %d %H:%M:%S %Y", &outArray[i]->DateTimeType);
+ printf( " DateTimeType %s\n", dateTime );
+ strftime(dateTime, 50, "%a %b %d %Y", &outArray[i]->DateType);
+ printf( " DateType %s\n", dateTime );
+
+// Following check for os/400 - the mock server will return ascii char which needs to be converted
+#ifdef __OS400__
+ if( outArray[i]->ByteType == 0x31)
+ outArray[i]->ByteType = '1';
+#endif
+ printf( " ByteType %d\n", outArray[i]->ByteType );
+ printf( " DecimalType %f\n", outArray[i]->DecimalType );
+ printf( " FloatType %f\n", outArray[i]->FloatType );
+ printf( " LongType %ld\n", outArray[i]->LongType );
+ printf( " QNameType %s\n", outArray[i]->QNameType );
+ printf( " ShortType %d\n", outArray[i]->ShortType );
+
+ printf( " Base64BinaryType ", outArray[i]->Base64BinaryType.__size );
+ if( outArray[i]->Base64BinaryType.__size > 0)
+ printf( " Base64BinaryType ", asciiToString((char *)outArray[i]->Base64BinaryType.__ptr) );
+
+ printf( " HexBinaryType ", outArray[i]->HexBinary.__size );
+ if( outArray[i]->HexBinary.__size > 0)
+ printf( " HexBinaryType ", asciiToString( (char *) outArray[i]->HexBinary.__ptr) );
+ }
+
+ returnValue = 0;
+ }
+ }
- return 0;
+ Axis_Delete_BenchDataType (input,0,0);
+ Axis_Delete_BenchDataType (output,0,0);
+
+ printf( "---------------------- TEST COMPLETE -----------------------------" );
+
+ return returnValue;
}
Modified: webservices/axis/trunk/c/tests/auto_build/testcases/client/c/SimpleTypeArrayClient.c
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/c/SimpleTypeArrayClient.c?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/c/SimpleTypeArrayClient.c (original)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/c/SimpleTypeArrayClient.c Thu Apr 6 19:23:48 2006
@@ -13,12 +13,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#include "CommonClientTestCode.h"
+#include <stdio.h>
+#include "CommonClientTestCode.h"
#include "SimpleTypeArrayWS.h"
-#include <stdio.h>
-
#define WSDL_DEFAULT_ENDPOINT "http://localhost:9080/SimpleTypeArray/services/sampleWS"
int main(int argc, char* argv[])
@@ -33,6 +32,8 @@
xsdc__int * array[100];
xsdc__int elements[100];
int i;
+
+ axiscRegisterExceptionHandler(exceptionHandler);
if (argc>2 && strcmp(argv[1], "-e") == 0)
endpoint = argv[2];
Modified: webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/AxisBenchClient.cpp
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/AxisBenchClient.cpp?rev=392161&r1=392160&r2=392161&view=diff
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/AxisBenchClient.cpp (original)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/AxisBenchClient.cpp Thu Apr 6 19:23:48 2006
@@ -236,9 +236,7 @@
// Following check for os/400 - the mock server will return ascii char which needs to be converted
#ifdef __OS400__
if( outArray[i]->ByteType == 0x31)
- {
outArray[i]->ByteType = '1';
- }
#endif
cout << " ByteType " << outArray[i]->ByteType << endl;
cout << " DecimalType " << outArray[i]->DecimalType << endl;
@@ -256,13 +254,7 @@
{
cout << " Base64BinaryType " << asciiToString((char *)base64BinaryData) << endl;
}
-/* Not Required
- if (base64BinaryData != NULL)
- {
- delete [] base64BinaryData;
- base64BinaryData = NULL;
- }
-*/
+
size = 0;
xsd__unsignedByte * hexBinaryData = outArray[i]->HexBinary.get(size);
@@ -273,14 +265,6 @@
{
cout << " HexBinaryType " << asciiToString( (char *) hexBinaryData) << endl;
}
-
-/* Not Required
- if (hexBinaryData != NULL)
- {
- delete [] hexBinaryData;
- hexBinaryData = NULL;
- }
-*/
}
returnValue = 0;