Author: amilas Date: Mon May 31 16:04:36 2010 New Revision: 949782 URL: http://svn.apache.org/viewvc?rev=949782&view=rev Log: Xmlschema searches within the imported and included schema, if QName is given. However adb code gen need to check only that element exists within the given schema. Changed the schema compiler to provide the local part of the qname.
Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java axis/axis2/java/core/trunk/modules/adb-codegen/test-resources/testsuite/chameleon_include.xsd Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java?rev=949782&r1=949781&r2=949782&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java (original) +++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java Mon May 31 16:04:36 2010 @@ -722,6 +722,7 @@ public class SchemaCompiler { // here what we want is to set the schema type name for the element if ((referencedElement.getSchemaType() != null) && (referencedElement.getSchemaType().getQName() != null)){ + // i.e this element refers to an complex type name if (!this.processedElementRefMap.containsKey(referencedElement.getQName())) { if (this.baseSchemaTypeMap.containsKey(referencedElement.getSchemaTypeName())) { @@ -2728,11 +2729,11 @@ public class SchemaCompiler { boolean isExists = false; switch (componetType) { case COMPONENT_TYPE : { - isExists = (schema.getTypeByName(componentQName) != null); + isExists = (schema.getTypeByName(componentQName.getLocalPart()) != null); break; } case COMPONENT_ELEMENT : { - isExists = (schema.getElementByName(componentQName) != null); + isExists = (schema.getElementByName(componentQName.getLocalPart()) != null); break; } case COMPONENT_ATTRIBUTE : { Modified: axis/axis2/java/core/trunk/modules/adb-codegen/test-resources/testsuite/chameleon_include.xsd URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/test-resources/testsuite/chameleon_include.xsd?rev=949782&r1=949781&r2=949782&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/adb-codegen/test-resources/testsuite/chameleon_include.xsd (original) +++ axis/axis2/java/core/trunk/modules/adb-codegen/test-resources/testsuite/chameleon_include.xsd Mon May 31 16:04:36 2010 @@ -18,6 +18,7 @@ ~ under the License. --> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://apache.org/axis2/schema/chameleon" elementFormDefault="qualified"> <xsd:complexType name="SupportingSchemaType"> <xsd:sequence>