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 de...@apache.org on 2007/07/23 10:37:32 UTC

svn commit: r558656 - /webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java

Author: deepal
Date: Mon Jul 23 01:37:31 2007
New Revision: 558656

URL: http://svn.apache.org/viewvc?view=rev&rev=558656
Log:
fixing AXIS2-2976

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

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=558656&r1=558655&r2=558656
==============================================================================
--- 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 Mon Jul 23 01:37:31 2007
@@ -349,6 +349,9 @@
                     } else {
                         continue;
                     }
+                    OMAttribute attribute = parts.getAttribute(
+                            new QName("http://www.w3.org/2001/XMLSchema-instance", "nil", "xsi"));
+
                     // if parts/@href != null then need to find element with id and deserialize.
                     // before that first check whether we already have it in the hashtable
                     String partsLocalName = parts.getLocalName();
@@ -359,18 +362,22 @@
                             continue;
 
                         Object partObj;
-                        if (SimpleTypeMapper.isSimpleType(parameters)) {
-                            partObj = SimpleTypeMapper.getSimpleTypeObject(parameters, parts);
-                        } else if (SimpleTypeMapper.isCollection(parameters)) {
-                            partObj = SimpleTypeMapper.getArrayList((OMElement)
-                                    parts.getParent(), prty.getName());
-                        } else if (SimpleTypeMapper.isDataHandler(parameters)){
-                            partObj = SimpleTypeMapper.getDataHandler(parts);
-                        } else if (parameters.isArray()) {
-                            partObj = deserialize(parameters, (OMElement)parts.getParent(),
-                                    objectSupplier, prty.getName());
+                        if (attribute != null) {
+                            partObj = null;
                         } else {
-                            partObj = deserialize(parameters, parts, objectSupplier, null);
+                            if (SimpleTypeMapper.isSimpleType(parameters)) {
+                                partObj = SimpleTypeMapper.getSimpleTypeObject(parameters, parts);
+                            } else if (SimpleTypeMapper.isCollection(parameters)) {
+                                partObj = SimpleTypeMapper.getArrayList((OMElement)
+                                        parts.getParent(), prty.getName());
+                            } else if (SimpleTypeMapper.isDataHandler(parameters)){
+                                partObj = SimpleTypeMapper.getDataHandler(parts);
+                            } else if (parameters.isArray()) {
+                                partObj = deserialize(parameters, (OMElement)parts.getParent(),
+                                        objectSupplier, prty.getName());
+                            } else {
+                                partObj = deserialize(parameters, parts, objectSupplier, null);
+                            }
                         }
                         Object [] parms = new Object[] { partObj };
                         Method writeMethod = prty.getWriteMethod();



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