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/10 05:04:52 UTC

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

dims        2005/06/09 20:04:52

  Modified:    java/src/org/apache/axis/encoding SerializationContext.java
  Log:
  Fix for AXIS-2021 - String Array Regression causes SAXException: Found character data ...
  
  Revision  Changes    Path
  1.109     +9 -2      ws-axis/java/src/org/apache/axis/encoding/SerializationContext.java
  
  Index: SerializationContext.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/encoding/SerializationContext.java,v
  retrieving revision 1.108
  retrieving revision 1.109
  diff -u -r1.108 -r1.109
  --- SerializationContext.java	4 May 2005 09:45:27 -0000	1.108
  +++ SerializationContext.java	10 Jun 2005 03:04:52 -0000	1.109
  @@ -1397,8 +1397,15 @@
                   if (shouldSendType ||
                       (xmlType != null &&
                        (!xmlType.equals(actualXMLType.value)))) {
  -                    if (!isEncoded() && Constants.isSOAP_ENC(actualXMLType.value.getNamespaceURI())) {
  -                        // Don't write SOAP_ENC types (i.e. Array) if we're not using encoding   
  +
  +                    if(!isEncoded()) {
  +                        if (Constants.isSOAP_ENC(actualXMLType.value.getNamespaceURI())) {
  +                            // Don't write SOAP_ENC types (i.e. Array) if we're not using encoding
  +                        } else {
  +                            if(!(javaType.isArray() && xmlType != null && Constants.isSchemaXSD(xmlType.getNamespaceURI())) ) {
  +                                writeXMLType = actualXMLType.value;
  +                            }
  +                        }
                       } else {
                           writeXMLType = actualXMLType.value;
                       }