You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ba...@apache.org on 2004/04/05 13:52:52 UTC
cvs commit: ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c ArrayParamWriter.java
baudyjy 2004/04/05 04:52:52
Modified: c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c
ArrayParamWriter.java
Log:
Fix VC6 compilation.
Revision Changes Path
1.7 +15 -3 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java
Index: ArrayParamWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ArrayParamWriter.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ArrayParamWriter.java 29 Mar 2004 04:20:31 -0000 1.6
+++ ArrayParamWriter.java 5 Apr 2004 11:52:52 -0000 1.7
@@ -123,11 +123,23 @@
protected void writeArrayStruct()throws WrapperFault{
try{
- writer.write("typedef struct {\n");
+ writer.write("typedef struct "+classname+"Tag\n{\n");
+ /*
+ * Needed for self referenced array else compilation failed.
+ * <xsd:complexType name="Type1">
+ * <xsd:sequence>
+ * <xsd:element name="followings" maxOccurs="unbounded" minOccurs="0" type="tns:Type1" />
+ * <xsd:element name="kind" type="xsd:string" />
+ * <xsd:element name="index" type="xsd:int" />
+ * </xsd:sequence>
+ * <xsd:attribute name="att_kind" type="tns:Kind" />
+ * </xsd:complexType>
+ */
+ //writer.write("\t"+attribs[0].getTypeName()+"* m_Array;\n\tint m_Size;\n} "+classname+";\n\n");
if(attribs[0].isSimpleType()){
throw new WrapperFault("Error : no need to synthesis arrays for simple types");
- }else{
- writer.write("\t"+attribs[0].getTypeName()+"* m_Array;\n\tint m_Size;\n} "+classname+";\n\n");
+ }else{
+ writer.write("\tstruct "+attribs[0].getTypeName()+"Tag * m_Array;\n\tint m_Size;\n} "+classname+";\n\n");
}
} catch (IOException e) {
throw new WrapperFault(e);