On Sat, Jan 25, 2014 at 9:41 PM, Kishanthan Thangarajah <[email protected]> wrote: > Yes, using IdentityHashMap would actually solve this issue. It will be > a more clean approach than changing the key. I will try that. Thanks > for pointing it out.
+1 Thanks ! > > On Sat, Jan 25, 2014 at 7:23 PM, Andreas Veithen > <[email protected]> wrote: >> Thanks for looking into this. >> >> What about using an IdentityHashMap? >> >> Andreas >> >> On Sat, Jan 25, 2014 at 1:03 PM, Kishanthan Thangarajah >> <[email protected]> wrote: >>> There are changes to XmlSchemaElement object. This class now overrides >>> both equals and hashcode methods. We are currently using this as a >>> hashmap key in SchemaCompiler. The issue is that some times the values >>> from map cannot be retrieved using the XmlSchemaElement key object, >>> which causes the NPE. >>> >>> As I tried to find the root cause for the failing test case, I ended >>> up finding that the key used in the map is some time getting mutated. >>> So in some places, the key element is getting changed (value write). >>> >>> So as a fix what we can do is change the key type to QName instead of >>> XmlSchemaElement and use the QName of XmlSchemaElement when >>> adding/retrieving values to/from the map. All tests are passing with >>> this change. But will this have any major impact? Because we have been >>> using the XmlSchemaElement as the key for all these years. >>> >>> Thoughts? >>> >>> On Sat, Jan 25, 2014 at 1:31 PM, Kishanthan Thangarajah >>> <[email protected]> wrote: >>>> Yes, looks like most of the core elements' equals and hashcode methods >>>> have been overridden : >>>> http://mail-archives.apache.org/mod_mbox/ws-commits/201401.mbox/%[email protected]%3E >>>> >>>> We need to fix this from that aspect. >>>> >>>> On Wed, Jan 22, 2014 at 8:10 PM, Sagara Gunathunga >>>> <[email protected]> wrote: >>>>> I still didn't get chance to look into this in detail but it look like >>>>> fix for XMLSCHEMA-30 cause this failure. >>>>> >>>>> >>>>> [1] - https://issues.apache.org/jira/browse/XMLSCHEMA-30 >>>>> >>>>> >>>>> Thanks ! >>>>> ---------- Forwarded message ---------- >>>>> From: Apache Jenkins Server <[email protected]> >>>>> Date: Wed, Jan 22, 2014 at 6:56 PM >>>>> Subject: Build failed in Jenkins: Axis2 » Apache Axis2 - ADB Codegen #2533 >>>>> To: [email protected] >>>>> >>>>> >>>>> See >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/2533/> >>>>> >>>>> ------------------------------------------ >>>>> [INFO] >>>>> [INFO] >>>>> ------------------------------------------------------------------------ >>>>> [INFO] Building Apache Axis2 - ADB Codegen 1.7.0-SNAPSHOT >>>>> [INFO] >>>>> ------------------------------------------------------------------------ >>>>> [INFO] >>>>> [INFO] --- maven-clean-plugin:2.2:clean (default-clean) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] Deleting directory >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target> >>>>> [INFO] >>>>> [INFO] --- maven-enforcer-plugin:1.1:enforce (default) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] >>>>> [INFO] --- maven-remote-resources-plugin:1.1:process (default) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] >>>>> [INFO] --- maven-resources-plugin:2.4.2:resources (default-resources) >>>>> @ axis2-adb-codegen --- >>>>> [INFO] Using 'UTF-8' encoding to copy filtered resources. >>>>> [INFO] skip non existing resourceDirectory >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/conf> >>>>> [INFO] Copying 11 resources >>>>> [INFO] Copying 2 resources >>>>> [INFO] >>>>> [INFO] --- maven-antrun-plugin:1.2:run (process-resources) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] Executing tasks >>>>> [copy] Copying 7 files to >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target/classes> >>>>> [INFO] Executed tasks >>>>> [INFO] >>>>> [INFO] --- maven-compiler-plugin:2.3.1:compile (default-compile) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] Compiling 17 source files to >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target/classes> >>>>> [INFO] >>>>> [INFO] --- maven-antrun-plugin:1.2:run (generate-test-sources) @ >>>>> axis2-adb-codegen --- >>>>> [INFO] Executing tasks >>>>> Overriding previous definition of reference to maven.dependency.classpath >>>>> >>>>> main: >>>>> [mkdir] Created dir: >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target/schema> >>>>> [mkdir] Created dir: >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target/schema/src> >>>>> [mkdir] Created dir: >>>>> <https://builds.apache.org/job/Axis2/org.apache.axis2$axis2-adb-codegen/ws/target/schema/classes> >>>>> [java] Compiling simple_maxOccurs2.xsd >>>>> [java] Compiling anonymous_complexType.xsd >>>>> [java] Compiling simple_choice.xsd >>>>> [java] Compiling simple_particle_all.xsd >>>>> [java] Compiling simple_maxOccurs.xsd >>>>> [java] Compiling simple_anytype.xsd >>>>> [java] Compiling simple-minoccurs0.xsd >>>>> [java] Compiling complex-minoccurs0.xsd >>>>> [java] Compiling simple-recursive-datatypes.xsd >>>>> [java] Compiling mixed_minoccus0.xsd >>>>> [java] Compiling simpleType-All.xsd >>>>> [java] Compiling derivedType-All.xsd >>>>> [java] Compiling testsuite.xsd >>>>> [java] Compiling extensions.xsd >>>>> [java] Compiling union.xsd >>>>> [java] Compiling all.xsd >>>>> [java] Compiling enumeration.xsd >>>>> [java] Compiling restrictions.xsd >>>>> [java] Exception in thread "main" java.lang.NullPointerException >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processElement(SchemaCompiler.java:728) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processElement(SchemaCompiler.java:608) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processElements(SchemaCompiler.java:2517) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.process(SchemaCompiler.java:2193) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processParticle(SchemaCompiler.java:2078) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processComplexType(SchemaCompiler.java:1205) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processNamedComplexSchemaType(SchemaCompiler.java:1135) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processSchema(SchemaCompiler.java:1045) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processElement(SchemaCompiler.java:652) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.processElement(SchemaCompiler.java:620) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.compile(SchemaCompiler.java:423) >>>>> [java] at >>>>> org.apache.axis2.schema.SchemaCompiler.compile(SchemaCompiler.java:315) >>>>> [java] at >>>>> org.apache.axis2.schema.XSD2Java.compile(XSD2Java.java:165) >>>>> [java] at org.apache.axis2.schema.XSD2Java.main(XSD2Java.java:96) >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [email protected] >>>>> For additional commands, e-mail: [email protected] >>>>> >>>>> >>>>> >>>>> -- >>>>> Sagara Gunathunga >>>>> >>>>> Blog - http://ssagara.blogspot.com >>>>> Web - http://people.apache.org/~sagara/ >>>>> LinkedIn - http://www.linkedin.com/in/ssagara >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [email protected] >>>>> For additional commands, e-mail: [email protected] >>>>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > -- Sagara Gunathunga Blog - http://ssagara.blogspot.com Web - http://people.apache.org/~sagara/ LinkedIn - http://www.linkedin.com/in/ssagara --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
