I found the cause of my null pointer. It's actually caused by a bug in the tomcat classloader: http://issues.apache.org/bugzilla/show_bug.cgi?id=33743. One of the threads gets a ClassNotFoundException trying to load one of my generated descriptor classes in ClassDescriptorResolverImpl.resolve. It goes on to use introspection, but something must be in an invalid state.
-Dan -----Original Message----- From: Smith, Daniel Sent: Monday, May 01, 2006 2:42 PM To: '[email protected]' Subject: Null pointer while unmarshalling xml to generated classes Hi, I'm getting a null pointer exception when unmarshalling xml to classes generated from using the source generator. This exception only happens if two threads are trying to unmarshal a document at the same time. One of the threads will succeed and one will fail with this exception. As far as I can tell it only happens the first time I try this after I start the JVM. After the initial error everything works fine. I'm using castor 1.0. I'm using the static Unmarshaller.unmarshal(Class, Node) method. Here's the stack trace: java.lang.NullPointerException at org.exolab.castor.xml.UnmarshalHandler.endElement(UnmarshalHandler.java: 757) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:249) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:182) at org.exolab.castor.xml.util.DOMEventProducer.processChildren(DOMEventProd ucer.java:333) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:247) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:182) at org.exolab.castor.xml.util.DOMEventProducer.processChildren(DOMEventProd ucer.java:333) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:247) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:182) at org.exolab.castor.xml.util.DOMEventProducer.processChildren(DOMEventProd ucer.java:333) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:247) at org.exolab.castor.xml.util.DOMEventProducer.process(DOMEventProducer.jav a:182) at org.exolab.castor.xml.util.DOMEventProducer.start(DOMEventProducer.java: 110) at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:584) at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:735) at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:848) at com.stargus.ws.DanTestWebServiceInput.processRequest(DanTestWebServiceIn put.java:82) at com.stargus.ws.DanTestWebServiceInput.access$0(DanTestWebServiceInput.ja va:75) at com.stargus.ws.DanTestWebServiceInput$1.run(DanTestWebServiceInput.java: 55) ------------------------------------------------- If you wish to unsubscribe from this list, please send an empty message to the following address: [EMAIL PROTECTED] -------------------------------------------------

