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 de...@apache.org on 2007/02/06 12:22:59 UTC

svn commit: r504082 - in /webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding: typemapping/SimpleTypeMapper.java utils/BeanUtil.java utils/MultirefHelper.java

Author: deepal
Date: Tue Feb  6 03:22:57 2007
New Revision: 504082

URL: http://svn.apache.org/viewvc?view=rev&rev=504082
Log:
applying patch for AXIS2-1835

Modified:
    webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java
    webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java
    webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java

Modified: webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java?view=diff&rev=504082&r1=504081&r2=504082
==============================================================================
--- webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java (original)
+++ webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/typemapping/SimpleTypeMapper.java Tue Feb  6 03:22:57 2007
@@ -44,7 +44,6 @@
     private static final String W_FLOAT = "java.lang.Float";
     private static final String W_CALENDAR = "java.util.Calendar";
     private static final String W_DATE = "java.util.Date";
-    private static final String ARRAY_LIST = "java.util.ArrayList";
     private static final String INT = "int";
     private static final String BOOLEAN = "boolean";
     private static final String BYTE = "byte";
@@ -139,11 +138,10 @@
         return isSimpleType(objClassName);
     }
 
-    public static boolean isArrayList(Class obj) {
-        String objClassName = obj.getName();
-        return ARRAY_LIST.equals(objClassName);
+    public static boolean isCollection(Class obj) {
+        return java.util.Collection.class.isAssignableFrom(obj);
     }
-
+    
     public static boolean isSimpleType(String objClassName) {
         if (objClassName.equals(STRING)) {
             return true;

Modified: webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java?view=diff&rev=504082&r1=504081&r2=504082
==============================================================================
--- webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java (original)
+++ webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java Tue Feb  6 03:22:57 2007
@@ -60,7 +60,10 @@
         try {
             JamServiceFactory factory = JamServiceFactory.getInstance();
             JamServiceParams jam_service_parms = factory.createServiceParams();
-            jam_service_parms.addClassLoader(beanObject.getClass().getClassLoader());
+            ClassLoader cl = beanObject.getClass().getClassLoader();
+            if (cl == null)
+                cl = ClassLoader.getSystemClassLoader();
+            jam_service_parms.addClassLoader(cl);
 //            beanObject.getClass().isArray()
 
             jam_service_parms.includeClass(beanObject.getClass().getName());
@@ -148,16 +151,16 @@
                             }
                         }
                     }
-                } else if (SimpleTypeMapper.isArrayList(ptype)) {
+                } else if (SimpleTypeMapper.isCollection(ptype)) {
                     Object value = propDesc.getReadMethod().invoke(beanObject,
                             null);
-                    ArrayList objList = (ArrayList) value;
+                    Collection objList = (Collection) value;
                     if (objList != null && objList.size() > 0) {
                         //this was given error , when the array.size = 0
                         // and if the array contain simple type , then the ADBPullParser asked
                         // PullParser from That simpel type
-                        for (int j = 0; j < objList.size(); j++) {
-                            Object o = objList.get(j);
+                        for (Iterator j = objList.iterator(); j.hasNext();) {
+                            Object o = j.next();
                             if (SimpleTypeMapper.isSimpleType(o)) {
                                 if (elemntNameSpace != null) {
                                     object.add(new QName(elemntNameSpace.getNamespaceURI(),
@@ -283,7 +286,7 @@
                         Object partObj;
                         if (SimpleTypeMapper.isSimpleType(parameters)) {
                             partObj = SimpleTypeMapper.getSimpleTypeObject(parameters, parts);
-                        } else if (SimpleTypeMapper.isArrayList(parameters)) {
+                        } else if (SimpleTypeMapper.isCollection(parameters)) {
                             partObj = SimpleTypeMapper.getArrayList((OMElement)
                                     parts.getParent(), prty.getName());
                         } else if (parameters.isArray()) {
@@ -545,7 +548,7 @@
                     } else {
                         return SimpleTypeMapper.getSimpleTypeObject(classType, omElement);
                     }
-                } else if (SimpleTypeMapper.isArrayList(classType)) {
+                } else if (SimpleTypeMapper.isCollection(classType)) {
                     return SimpleTypeMapper.getArrayList(omElement);
                 } else {
                     return BeanUtil.deserialize(classType, omElement, objectSupplier, null);
@@ -649,8 +652,7 @@
     /**
      * @deprecated Please use getUniquePrefix
      */
-    public static String getUniquePrifix
-            () {
+    public static String getUniquePrifix() {
         return "ns" + nsCount++;
     }
 
@@ -659,8 +661,7 @@
      *
      * @return unique prefix
      */
-    public static String getUniquePrefix
-            () {
+    public static String getUniquePrefix() {
         return "ns" + nsCount++;
     }
 
@@ -672,9 +673,7 @@
      * @param wrongName
      * @return the right name, using english as the locale for case conversion
      */
-    private static String getCorrectName
-            (String
-                    wrongName) {
+    private static String getCorrectName(String  wrongName) {
         if (wrongName.length() > 1) {
             return wrongName.substring(0, 1).toLowerCase(Locale.ENGLISH)
                     + wrongName.substring(1, wrongName.length());

Modified: webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java?view=diff&rev=504082&r1=504081&r2=504082
==============================================================================
--- webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java (original)
+++ webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java Tue Feb  6 03:22:57 2007
@@ -118,7 +118,7 @@
                 Object valObj = SimpleTypeMapper.getSimpleTypeObject(javatype, val);
                 objectmap.put(id, valObj);
                 return valObj;
-            } else if (SimpleTypeMapper.isArrayList(javatype)) {
+            } else if (SimpleTypeMapper.isCollection(javatype)) {
                 Object valobj = SimpleTypeMapper.getArrayList(val);
                 objectmap.put(id, valobj);
                 return valobj;



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