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 na...@apache.org on 2006/12/31 22:45:44 UTC

svn commit: r491498 - in /webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp: ServiceHeaderWriter.java literal/ServiceHeaderWriter.java

Author: nadiramra
Date: Sun Dec 31 13:45:44 2006
New Revision: 491498

URL: http://svn.apache.org/viewvc?view=rev&rev=491498
Log:
AXISCPP-926 - Server side files created by WSDL2Ws fails to compile

Modified:
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ServiceHeaderWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ServiceHeaderWriter.java

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ServiceHeaderWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ServiceHeaderWriter.java?view=diff&rev=491498&r1=491497&r2=491498
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ServiceHeaderWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ServiceHeaderWriter.java Sun Dec 31 13:45:44 2006
@@ -283,6 +283,8 @@
             Type atype;
             Iterator types = this.wscontext.getTypemap().getTypes().iterator();
             HashSet typeSet = new HashSet();
+            HashSet removeSet = new HashSet();
+            
             writer.write("#include <axis/AxisUserAPI.hpp>\n");
             writer.write("#include <axis/AxisUserAPIArrays.hpp>\n");
             writer.write("#include <axis/ISoapAttachment.hpp>\n");
@@ -291,22 +293,26 @@
             while (types.hasNext())
             {
                 atype = (Type) types.next();
-                if (atype.isAnonymous() && !atype.isExternalized())
+                
+                if (!atype.isExternalized())
                     continue;
 
                 typeName = WrapperUtils.getLanguageTypeName4Type(atype);
                 if (null != typeName)
                     typeSet.add(typeName);
+                   
+                if (atype.isRestriction())
+                    removeSet.add(atype.getLanguageSpecificName()  + "_Array");
             }
             
+            Iterator ritr = removeSet.iterator();
+            while (ritr.hasNext())
+                typeSet.remove(ritr.next());
+            
             Iterator itr = typeSet.iterator();
             while (itr.hasNext())
             {
-                writer.write(
-                    "#include \""
-                        + itr.next().toString()
-                        + CUtils.CPP_HEADER_SUFFIX
-                        + "\"\n");
+                writer.write("#include \"" + itr.next().toString() + CUtils.CPP_HEADER_SUFFIX + "\"\n");
             }
             //writeFaultHeaders();
             writer.write("\n");

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ServiceHeaderWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ServiceHeaderWriter.java?view=diff&rev=491498&r1=491497&r2=491498
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ServiceHeaderWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ServiceHeaderWriter.java Sun Dec 31 13:45:44 2006
@@ -82,11 +82,14 @@
      */
     protected void writePreprocessorStatements() throws WrapperFault
     {
+        // TODO - remove and use parent class method
         try
         {
             Type atype;
             Iterator types = this.wscontext.getTypemap().getTypes().iterator();
             HashSet typeSet = new HashSet();
+            HashSet removeSet = new HashSet();
+            
             writer.write("#include <axis/AxisUserAPI.hpp>\n");
             writer.write("#include <axis/AxisUserAPIArrays.hpp>\n");
             writer.write("#include <axis/ISoapAttachment.hpp>\n");
@@ -94,11 +97,20 @@
             while (types.hasNext())
             {
                 atype = (Type) types.next();
-                if (atype.isAnonymous() && !atype.isExternalized())
-                    continue;
+
+                if (!atype.isExternalized())
+                    continue;                
 
                 typeSet.add(atype.getLanguageSpecificName());
+                
+                if (atype.isRestriction())
+                    removeSet.add(atype.getLanguageSpecificName()  + "_Array");                
             }
+            
+            Iterator ritr = removeSet.iterator();
+            while (ritr.hasNext())
+                typeSet.remove(ritr.next());
+            
             
             Iterator itr = typeSet.iterator();
             while (itr.hasNext())



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org