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 + "\", "


Reply via email to