You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by Andreas Veithen <an...@gmail.com> on 2010/06/08 21:23:10 UTC

Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Amila,

As the name of the file implies, the test case that uses
chameleon_include.xsd was designed to check that ADB correctly
supports the chameleon pattern [1]. See AXIS2-3851. By adding a
targetNamespace, the schema no longer uses the chameleon pattern.
Thus, there is probably a regression here.

Andreas

[1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed

On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> 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>
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Posted by Amila Suriarachchi <am...@gmail.com>.
On Wed, Jun 9, 2010 at 12:53 AM, Andreas Veithen
<an...@gmail.com>wrote:

> Amila,
>
> As the name of the file implies, the test case that uses
> chameleon_include.xsd was designed to check that ADB correctly
> supports the chameleon pattern [1]. See AXIS2-3851. By adding a
> targetNamespace, the schema no longer uses the chameleon pattern.
> Thus, there is probably a regression here.
>

Chameleon pattern has been working with ADB since the issue I have fixed.
This issue has caused by
some changes to Xmlschema.
So I think, if we want to add the chemeleon support to ADB we need to add
support explicitly.

I'll have a look on it.

thanks,
Amila.



>
> Andreas
>
> [1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed
>
> On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> > 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>
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-dev-help@axis.apache.org
>
>


-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/

Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Posted by Amila Suriarachchi <am...@gmail.com>.
On Wed, Jun 9, 2010 at 12:53 AM, Andreas Veithen
<an...@gmail.com>wrote:

> Amila,
>
> As the name of the file implies, the test case that uses
> chameleon_include.xsd was designed to check that ADB correctly
> supports the chameleon pattern [1]. See AXIS2-3851. By adding a
> targetNamespace, the schema no longer uses the chameleon pattern.
> Thus, there is probably a regression here.
>

Chameleon pattern has been working with ADB since the issue I have fixed.
This issue has caused by
some changes to Xmlschema.
So I think, if we want to add the chemeleon support to ADB we need to add
support explicitly.

I'll have a look on it.

thanks,
Amila.



>
> Andreas
>
> [1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed
>
> On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> > 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>
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-dev-help@axis.apache.org
>
>


-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/

Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Posted by Amila Suriarachchi <am...@gmail.com>.
On Wed, Jun 9, 2010 at 12:53 AM, Andreas Veithen
<an...@gmail.com>wrote:

> Amila,
>
> As the name of the file implies, the test case that uses
> chameleon_include.xsd was designed to check that ADB correctly
> supports the chameleon pattern [1]. See AXIS2-3851. By adding a
> targetNamespace, the schema no longer uses the chameleon pattern.
> Thus, there is probably a regression here.
>

Chameleon pattern has been working with ADB since the issue I have fixed.
This issue has caused by
some changes to Xmlschema.
So I think, if we want to add the chemeleon support to ADB we need to add
support explicitly.

I'll have a look on it.

thanks,
Amila.



>
> Andreas
>
> [1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed
>
> On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> > 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>
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-dev-help@axis.apache.org
>
>


-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/

Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Posted by Amila Suriarachchi <am...@gmail.com>.
On Wed, Jun 9, 2010 at 12:53 AM, Andreas Veithen
<an...@gmail.com>wrote:

> Amila,
>
> As the name of the file implies, the test case that uses
> chameleon_include.xsd was designed to check that ADB correctly
> supports the chameleon pattern [1]. See AXIS2-3851. By adding a
> targetNamespace, the schema no longer uses the chameleon pattern.
> Thus, there is probably a regression here.
>

Chameleon pattern has been working with ADB since the issue I have fixed.
This issue has caused by
some changes to Xmlschema.
So I think, if we want to add the chemeleon support to ADB we need to add
support explicitly.

I'll have a look on it.

thanks,
Amila.



>
> Andreas
>
> [1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed
>
> On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> > 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>
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-dev-help@axis.apache.org
>
>


-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/

Re: svn commit: r949782 - in /axis/axis2/java/core/trunk/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/chameleon_include.xsd

Posted by Amila Suriarachchi <am...@gmail.com>.
On Wed, Jun 9, 2010 at 12:53 AM, Andreas Veithen
<an...@gmail.com>wrote:

> Amila,
>
> As the name of the file implies, the test case that uses
> chameleon_include.xsd was designed to check that ADB correctly
> supports the chameleon pattern [1]. See AXIS2-3851. By adding a
> targetNamespace, the schema no longer uses the chameleon pattern.
> Thus, there is probably a regression here.
>

Chameleon pattern has been working with ADB since the issue I have fixed.
This issue has caused by
some changes to Xmlschema.
So I think, if we want to add the chemeleon support to ADB we need to add
support explicitly.

I'll have a look on it.

thanks,
Amila.



>
> Andreas
>
> [1] http://www.xfront.com/ZeroOneOrManyNamespaces.html#mixed
>
> On Mon, May 31, 2010 at 18:04,  <am...@apache.org> wrote:
> > 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>
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-dev-help@axis.apache.org
>
>


-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/