DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22217>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22217 NullPointerException in TransformerImpl.run() when reusing XMLFilter object Summary: NullPointerException in TransformerImpl.run() when reusing XMLFilter object Product: XalanJ2 Version: 2.5Dx Platform: PC OS/Version: Windows NT/2K Status: NEW Severity: Major Priority: Other Component: org.apache.xalan.transformer AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Whenever I attempt to re-use an XMLFilter object, I receive the following stack trace (first use of the XMLFilter was successful, so it doesn't appear to be my XSL script): Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3364) at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:427) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:191) at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:191) at transform.Transform.doTransform(Transform.java:298) at transform.Transform.doTransform(Transform.java:279) at transform.Transform.main(Transform.java:204) I traced this to the following line in TransformerImpl.applyTemplateToNode(): DTM dtm = m_xcontext.getDTM(child); This appears to be returning null when the XMLFilter object is being used for the second time. If I comment out the: m_xcontext.reset(); line in TransformerImpl.reset(), then the problem seems to be resolved, and I am able to re-use the same XMLFilter object many times. I have seem a few other items out on Google speaking of the same issue, and one poster stated he had this problem even with a simple modification to the UseXMLFilters sample to run the parse() in a loop; so this should be very easy to reproduce. If not, let me know, and I can pass on my code.
