Dims, a few comments about this:

The dataset in the WSDL for your dataset test contains an <xsd:schema> followed by an 
<xsd:any>, so it looks to me like we're picking up on the any and therefore making a 
MessageElement[] in the generated types.  This "any" ends up picking up both the 
<xsd:schema> and the <diffgram> in the returned result.

In no case is an element with a *type* of "schema" ever going to happen, I think, 
because <schema> is an element declaration, not a type (the schema for schema defines 
the element with an anonymous complexType).

In other words, neither the thing I removed nor the type mapping you introduced seem 
like they actually did anything.  Does this analysis seem reasonable, or am I just 
suffering from a lack of coffee?

What I'd like to see (and I'm working on in my sandbox) is <xsd:schema> getting 
deserialized to an org.apache.axis.xsd.xml.schema.XmlSchema.  Except I'd much rather 
we called that "org.apache.axis.xsd.XmlSchema" or even 
"org.apache.axis.schema.XmlSchema"....  And regardless, this presumes that we 
integrate the schema contribution.

--Glen

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Monday, November 25, 2002 2:53 PM
> To: [EMAIL PROTECTED]
> Subject: cvs commit: xml-axis/java/src/org/apache/axis/encoding
> SerializationContextImpl.java
> 
> 
> gdaniels    2002/11/25 11:53:08
> 
>   Modified:    java/src/org/apache/axis/wsdl/symbolTable 
> SymbolTable.java
>                         SchemaUtils.java
>                java/src/org/apache/axis/encoding
>                         SerializationContextImpl.java
>   Log:
>   A little cleanup, and remove Dims' "schema" entry in the 
> schema types
>   table, since it doesn't appear to be doing anything (?).
>   
>   Revision  Changes    Path
>   1.53      +3 -3      
> xml-axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java
>   
>   Index: SymbolTable.java
>   ===================================================================
>   RCS file: 
> /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/symbolTable/S
> ymbolTable.java,v
>   retrieving revision 1.52
>   retrieving revision 1.53
>   diff -u -r1.52 -r1.53
>   --- SymbolTable.java        22 Nov 2002 14:38:53 -0000      1.52
>   +++ SymbolTable.java        25 Nov 2002 19:53:08 -0000      1.53
>   @@ -766,7 +766,7 @@
>                    if (includeName != null) {
>                        URL url = getURL(context, includeName);
>                        Document includeDoc = 
> XMLUtils.newDocument(url.toString());
>   -                    populate(url, (Definition) null, 
> includeDoc, url.toString());
>   +                    populate(url, null, includeDoc, 
> url.toString());
>                    }
>                }
>            }
>   @@ -1152,7 +1152,7 @@
>                parameters.returnParam.setMode(Parameter.OUT);
>                if (parameters.returnParam.getType() 
> instanceof DefinedElement) {
>                    parameters.returnParam.setQName(
>   -                        
> ((DefinedElement)parameters.returnParam.getType())
>   +                        parameters.returnParam.getType()
>                            .getQName());
>                }
>                ++parameters.outputs;
>   @@ -2103,7 +2103,7 @@
>            Iterator ports = service.getPorts().values().iterator();
>            while (ports.hasNext()) {
>                Port port = (Port) ports.next();
>   -            Binding binding = (Binding) port.getBinding();
>   +            Binding binding = port.getBinding();
>                BindingEntry bEntry = 
> getBindingEntry(binding.getQName());
>                if (bEntry != null) {
>                    setBindingReferences(bEntry, def, doc);
>   
>   
>   
>   1.18      +4 -7      
> xml-axis/java/src/org/apache/axis/wsdl/symbolTable/SchemaUtils.java
>   
>   Index: SchemaUtils.java
>   ===================================================================
>   RCS file: 
> /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/symbolTable/S
> chemaUtils.java,v
>   retrieving revision 1.17
>   retrieving revision 1.18
>   diff -u -r1.17 -r1.18
>   --- SchemaUtils.java        24 Nov 2002 14:43:59 -0000      1.17
>   +++ SchemaUtils.java        25 Nov 2002 19:53:08 -0000      1.18
>   @@ -343,8 +343,7 @@
>            // used to retrieve the proper java name of the type.
>            QName nodeType = Utils.getTypeQName(elementNode, 
> forElement, false);
>    
>   -        TypeEntry type = 
> (TypeEntry)symbolTable.getTypeEntry(nodeType, 
>   -                                                           
>   forElement.value);
>   +        TypeEntry type = 
> symbolTable.getTypeEntry(nodeType, forElement.value);
>    
>            // An element inside a complex type is either 
> qualified or unqualified.
>            // If the ref= attribute is used, the name of the 
> ref'd element is used
>   @@ -564,7 +563,7 @@
>                    return null; // No extension base
>                }
>                // Return associated Type
>   -            return (TypeEntry) symbolTable.getType(extendsType);
>   +            return symbolTable.getType(extendsType);
>            }
>            return null;
>        }
>   @@ -1094,9 +1093,8 @@
>                    }
>                    
>                    // Get the corresponding TypeEntry from 
> the symbol table
>   -                TypeEntry type = 
>   -                        
> (TypeEntry)symbolTable.getTypeEntry(attributeType, 
>   -                                                           
>  forElement.value);
>   +                TypeEntry type = 
> symbolTable.getTypeEntry(attributeType, 
>   +                                                          
> forElement.value);
>                    
>                    // add type and name to vector, skip it if 
> we couldn't parse it
>                    // XXX - this may need to be revisited.
>   @@ -1111,7 +1109,6 @@
>    
>        // list of all of the XSD types in Schema 2001
>        private static String schemaTypes[] = {
>   -        "schema",
>            "string",
>            "normalizedString",
>            "token",        
>   
>   
>   
>   1.80      +1 -2      
> xml-axis/java/src/org/apache/axis/encoding/SerializationContex
> tImpl.java
>   
>   Index: SerializationContextImpl.java
>   ===================================================================
>   RCS file: 
> /home/cvs/xml-axis/java/src/org/apache/axis/encoding/Serializa
> tionContextImpl.java,v
>   retrieving revision 1.79
>   retrieving revision 1.80
>   diff -u -r1.79 -r1.80
>   --- SerializationContextImpl.java   31 Oct 2002 23:40:46 
> -0000 1.79
>   +++ SerializationContextImpl.java   25 Nov 2002 19:53:08 
> -0000 1.80
>   @@ -66,7 +66,6 @@
>    import org.apache.axis.wsdl.symbolTable.SymbolTable;
>    import org.apache.axis.wsdl.symbolTable.SchemaUtils;
>    import org.apache.axis.encoding.ser.BaseSerializerFactory;
>   -import org.apache.axis.enum.Style;
>    import org.apache.axis.enum.Use;
>    import org.apache.axis.handlers.soap.SOAPService;
>    import org.apache.axis.attachments.Attachments;
>   @@ -354,7 +353,7 @@
>        public TypeMappingRegistry getTypeMappingRegistry() {
>            if (msgContext == null)
>                return null;
>   -        return (TypeMappingRegistry) 
> msgContext.getTypeMappingRegistry();
>   +        return msgContext.getTypeMappingRegistry();
>        }
>    
>        /**
>   
>   
>   
> 

Reply via email to