Glen, The first step was to make sure that wsdl2java did not croak. Which was the oldest bug we had to date (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8419). This was what i did...The check-in and test case ensures that xsd:schema is handled both when wsdl2java is run as well as when we get xsd:schema over the wire....Yes, the code checked in is not perfect. Needs to be cleaned up. I mentioned that tweaking is needed in (http://nagoya.apache.org/eyebrowse/ReadMsg?[EMAIL PROTECTED]&msgNo=8110).
Please feel free to modify the code.... Thanks, dims --- Glen Daniels <[EMAIL PROTECTED]> wrote: > > 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(); > > } > > > > /** > > > > > > > > ===== Davanum Srinivas - http://xml.apache.org/~dims/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus – Powerful. Affordable. Sign up now. http://mailplus.yahoo.com