Applied a fix to modify the buildElementsAndTypes method to match a change in WS-Commons XmlSchema
where by XmlSchema.getTargetNamespace() now returns null if the target namespace is absent (rather than the string "DEFAULT" as it used to).
This should fix the first 3 test failures reported by this JIRA; Chameleon-1G, Chameleon-2G and Chameleon-3G.
Testcase Chameleon-4G will still fail because of a problem with the equals(Object) method inherited by XmlSchema from XmlSchemaObject. Based on the equivalance checking in this method, the second inline schema in Chameleon-4G's getBalance.wsdl is considered to be equal to the first inline schema (ie. even though they have different TNS and <xs:include> different schemas), so the second inline schema is ignored by Woden. i.e. Woden does not extract the second inline schema's included element declarations and type defintitions.
A workaround might be to re-code Woden so that it does not depend on the equals(Object) method via the statement:
but instead, checks the object references explicitly.
A better solution is to fix the equivalence checking of XmlSchema.equals(Object). I'll post to the WS-COMMONS mailing list about this and/or raise an JIRA against XmlSchema.