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 di...@apache.org on 2005/06/14 03:30:27 UTC

cvs commit: ws-axis/java/src/org/apache/axis/encoding/ser BeanSerializer.java

dims        2005/06/13 18:30:27

  Modified:    java/src/org/apache/axis/encoding/ser BeanSerializer.java
  Log:
  Fix for AXIS-2050 - .NET interop failure on arrays of complex types.
  
  Revision  Changes    Path
  1.88      +7 -12     ws-axis/java/src/org/apache/axis/encoding/ser/BeanSerializer.java
  
  Index: BeanSerializer.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/encoding/ser/BeanSerializer.java,v
  retrieving revision 1.87
  retrieving revision 1.88
  diff -u -r1.87 -r1.88
  --- BeanSerializer.java	27 May 2005 15:38:09 -0000	1.87
  +++ BeanSerializer.java	14 Jun 2005 01:30:27 -0000	1.88
  @@ -474,23 +474,18 @@
                                                      fieldType,
                                                      isOmittable,
                                                      where.getOwnerDocument());
  -//        } else if (itemQName != null) {
  -//            // This is a "wrapped" literal array, so write the element with
  -//            // an anonymous complexType containing a sequence containing
  -//            // an element of the right type with maxOccurs="unbounded"
  -//            elem = types.createElement(fieldName, null, false, false, where.getOwnerDocument());
  -//            String typeName = types.writeType(fieldType);
  -//            Element complexType = types.createLiteralArrayElement(typeName,
  -//                                                                  itemQName);
  -//            elem.appendChild(complexType);
  -//            where.appendChild(elem);
  -//            return;
           } else {
               if (!SchemaUtils.isSimpleSchemaType(xmlType) &&
                       Types.isArray(fieldType)) {
                   xmlType = null;
               }
  -            
  +
  +            if (itemQName != null &&
  +                    SchemaUtils.isSimpleSchemaType(xmlType) &&
  +                    Types.isArray(fieldType)) {
  +                xmlType = null;
  +            }
  +
               QName typeQName = types.writeTypeAndSubTypeForPart(fieldType, xmlType);
               elementType = types.getQNameString(typeQName);