You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-commits@axis.apache.org by na...@apache.org on 2012/06/18 19:57:33 UTC

svn commit: r1351426 - /axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java

Author: nadiramra
Date: Mon Jun 18 17:57:33 2012
New Revision: 1351426

URL: http://svn.apache.org/viewvc?rev=1351426&view=rev
Log:
AXISCPP-439 Soap faults fail for primitive types 

Modified:
    axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java

Modified: axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java
URL: http://svn.apache.org/viewvc/axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java?rev=1351426&r1=1351425&r2=1351426&view=diff
==============================================================================
--- axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java (original)
+++ axis/axis1/c/trunk/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/ClientStubWriter.java Mon Jun 18 17:57:33 2012
@@ -659,9 +659,9 @@ public class ClientStubWriter extends CF
             FaultInfo info = (FaultInfo) paramsFault.next ();
             faultInfoName = info.getFaultInfo ();
 
-            // FJP - D0004 > Looking through the list of attributes for the 'error' part of
-            //               the fault message.  If found, update the faultInfoName with the
-            //               'localname' of the qname of the attribute.                         
+            // Looking through the list of attributes for the 'error' part of
+            // the fault message.  If found, update the faultInfoName with the
+            // 'localname' of the qname of the attribute.                         
             Iterator infoArrayListIterator = info.getParams ().iterator ();
             boolean found = false;
 
@@ -682,6 +682,14 @@ public class ClientStubWriter extends CF
             {
                 ParameterInfo par = (ParameterInfo) paramInfo.get (i);
                 langName = par.getLangName ();
+                String faultType  = CUtils.getClassNameFromParamInfoConsideringArrays (par,wscontext);
+                String faultTypeName = faultType;
+                if (faultType.lastIndexOf('*') != -1)
+                    faultTypeName = faultType.substring(0, faultType.lastIndexOf('*'));
+                
+                // TODO Currently we do not create exception classes for simple types!
+                if (CUtils.isSimpleType (faultTypeName))
+                    continue;
 
                 c_writer.write ("\taxiscCallAddSoapFaultToList(call, \"" 
                         + faultInfoName + "\", "