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(); > } > > /** > > > >